The Co-operators

About the Company

The Co-operators is a nation-wide insurance and financial services co-operative. The co-operative nature of the business is a point of pride, and means that the business focuses on fulfilling the needs of those using their services rather than making a profit. This means that the software, the company uses to provide insurance to its customers, is a highly modified version of an already existing insurance provider software (Guidewire). This means the company needs to maintain a full-time staff to both add and maintain these custom features so they stay compliant with government regulations, as well as deal with any bugs reported. The software itself is a web-based service that has all aspects maintained by the company itself.

Test

Goals

One of the aspects that I wished to learn at The Co-operators was how to work with a professional team using agile methodologies while also learning how to manage and work in a large code base, while making sure that the code I submitted met with the company’s standards and version control processes. I also wanted to make sure the code I submitted was properly documented and tested. These goals were broader in scope due to this being my first employment in a professional developer position. Thus, they were all related to my tasks, but not in any specific manner. My main goal, for this work term, was to become used to working in a professional environment. Ultimately, this experience would allow me to be able to integrate into future positions of employment more rapidly, by using the skills and techniques learned at the Co-operators and applying them in a similar manner. In the end, I achieved my learning goals, in varying degrees of personal satisfaction. The documentation and quality code was not as comprehensive and did not have as many company guidelines to follow, therefore my skills did not improve as much as I would have liked. Overall, however I performed all of the tasks that were expected of me by the company.

Job Description

My job at The Co-operators was working with the rate review team for the auto line; that ultimately had two sections to it. The first section was developing tools to help with testing, and the second was working on implementing unit tests and helping out on items being developed by my team.

Developing tools

The first two months I spent developing tools to help display and refine information, and tools which created unique numbers based off of imputed data. The first item was a driver license generator form, which took name, date of birth, and gender to create a valid driver’s licence number for a selected province. The next item was a vehicle lookup tool which searched the company’s database using the year, make, model, selected database table, and vehicle code to refine the search. Once the matches were displayed the user could then generate a valid Vehicle Identification Number (VIN) for that specific vehicle, the user could also select a vehicle and bring up a form which displayed all the database table information that the vehicle was in. Another item was a postal code lookup form, which allowed a user to find postal code for a specific province in a specific territory. Finally, I worked on a form which displayed the premiums or discounts for all, or selected vehicle(s), across all quote periods for a selected policy. These could then be exported to excel. The majority of this was done in the Gosu language, which I learned how to use on the job. This was not too difficult to do because of its similarity to Java.

Unit testing

The last two months I mainly worked with my team to develop unit tests for features that other developers where working on. This was done through two main methods, the first was Guint, which is basically Juint except for Gosu. The second was the Gerkin framework using Cucumber, which I had never used before and learned on the job. I also worked on a script which searched the log files for a specific xml sequence, compiled them together and exported them in a CSV format to make data analysis easier. Overall, these two months were less about developing technical skills, and more about learning how to work with a team professionally.

Conclusions

In the end my experience at Co-operators was a good introduction to how software development at a large company is managed. It gave me insight on some of the techniques and practices used in the industry.