Our client is a global insurance custom product development company (1.6M+ EUR in revenues) with a team of dedicated insurance and IT professionals working in London (Great Britain), Tallinn (Estonia), Riga, Vilnius, Warsaw and California, USA.
The global insurance market is constantly growing. There a lot of brokers, insurance companies, and their customers. Our Client aims to integrate them all into intermediary Insurance SaaS platform. Today more than 120 brokers in over 30 countries use its in-house made solution and their amount is constantly growing. The Client wanted to hire dedicated software developers from Belitsoft SaaS development company to enlarge his team and speed up the process of maintaining his system while adding new complex custom features to it.
- Our dedicated developers needed to plunge fast into the existing product, its business logic, architectural features and coding standards to be able to maintain and customize it;
- Our Client has its own developers and we need to adapt to them, to become a part of ONE team united by a single goal;
- The main customers of our Client are Managing General Agents (MGA) (insurance intermediaries, who have underwriting authority from insurers). The uniqueness of this SaaS platform is that our Client can customize the product to meet specific demands of its customers. The challenge is that initially the “Core” of this application was designed as a slightly scalable Monolith, hence adding any new functionality to it is a non-trivial task, because customization can disrupt the whole system.
- Agile-based management (one-week sprints with reports);
- In recognition of the client's need for an automation testing company to implement an AutoTesting-First Approach, we also provide such services as part of our comprehensive package. We leverage selenium testing, unit testing, and behavioral testing to ensure quality control. Additionally, we incorporate continuous integration practices to ensure that customization does not disrupt any part of the monolithic structure.
- Implementing Code reviews. That means that code of a certain developer must be checked and approved by two other experienced developers or the team leads. It helped to increase the general quality of code.
- After considering what would be the most beneficial approach for our current client, we decided to apply our Laravel development services package, in which we utilize a microservices architecture and undertake refactoring wherever possible. For example, we used Laravel to create insurance calculator to speed up the quote calculation for brokers who also use this SaaS system. With microservices, it is easy to test API calls and create documentation for new functionality;
- Maintaining the code of the Monolith written before us (bug fixing);
- Maintaining the synchronization between crucial databases.
ADAPTATION AND WORKFLOW
The Team Lead, 7 programmers, and 2 QA-engineers represent our team of developers. The Product Owner and the Scrum Master from our Client’s side control the development process. Using of Skype, Microsoft Teams, Jira, and Confluence provides effective communication between us.
The adaptation period of the team of our developers with the workflows and teams of our Client was about 2-4 weeks.
The development management is Agile-based. That lets constantly discuss the implementation of new tasks and features, and then successfully cope with them within a week. Each task of our dedicated team should be resolved by Thursday evening. The duration of one sprint is one week, so releases take place every Friday.
All the tasks have 4 statuses: 'to do', 'in development', 'needs to review' (require merge request), and 'resolved' (‘Implemented, but needs to be tested’, ‘in Live’, or ’Completed’). The Team Leads organize daily stand ups at 11:00 to monitor how the development process is going: what tasks have been done, what tasks are planned to be implemented today, and what problems have to be solved.
Our developers go on business trips to the Client’s office when it is required to discuss new important ideas, share the mutual experience or participate in the development of new features as a part of the mixed team.