The register

The platform of more than 400 agencies to rebuild without switching it off.

An insurance group

Insurance · Software architecture · Legacy modernisation · AWS

An insurance group sold its agencies a platform that aggregates carrier data: with it, agencies sell products, follow their portfolio and keep their accounts. The system was about twenty years old and still ran the daily operation: replacing it meant changing the foundations without interrupting the service.

Today the platform is used by more than 400 agencies in Northern Italy. We wrote over 80% of the code in production and operational efficiency in the agencies grew by 70%.

400+
insurance agencies served by the platform
80%
of the code in production written by our core team
70%
more operational efficiency in the agencies

The context

The problem was never writing a new management system. The existing one concentrated processes that had grown over twenty years and kept being used while we worked: every new feature had to live alongside what was already in production, while agencies kept selling and carriers kept changing their data formats.

A complete replacement in a single release would have concentrated all the risk in one moment. The project had to let the new system take over responsibilities from the old one a piece at a time, without asking the organisation to stop.

The constraint

The main requirement was continuity. Selling, portfolio and accounting had to stay available to the agencies for the whole duration of the modernisation, and carrier data had to keep arriving. At the same time, copying the old system's architecture would have carried its limits into the new platform.

So the work started before the code: identifying the system's domains, their dependencies and the order in which they could be separated. It is the phase we call reading, and here it decided everything else.

The decision

We chose a progressive migration. The new platform was designed as a distributed system on AWS, so that application responsibilities could move one at a time instead of waiting for the entire new system to be ready before touching production.

This let us verify each part under real conditions, with real users and real data, and keep the risk surface of every release small. The price was a long coexistence of old and new, with data living in two places for a while: a cost accepted in exchange for being able to stop at any moment without damage.

The intervention

The backend was built with Laravel and Node.js services, the interfaces in Vue. Redis carries the queues and the carrier synchronisations, which run nightly and in real time where needed, with Horizon governing them. The database sits on RDS Aurora, the infrastructure on EC2.

Development moved forward test-driven and with continuous releases. The old system was never switched off on a date: its domains were replaced as the new components reached the maturity to take on that responsibility. Each step had a clear boundary and a way back.

A tech lead on the client's side kept architecture and code review; our core team wrote the large majority of the code. It is how we prefer to work with an internal team: explicit responsibilities, mutual reviews, written decisions. It sits within our custom software development and our cloud and infrastructure work.

INTERFACCE → API / SERVIZI → CODE → SISTEMI E DATI

Simplified diagram. Architectural details and integrations withheld for confidentiality.

The result

The new system did not remain a parallel project: it progressively became the operating platform. Today it is used by more than 400 agencies in Northern Italy and over 80% of the code in production was written by our core team. Operational efficiency in the agencies grew by 70% against the previous system.

The part that matters most, though, is that the modernisation required no suspension of operations and no wholesale replacement of the previous system. Agencies kept selling, following their portfolio and keeping their accounts while the foundations changed underneath.

After the release

A platform like this does not end at go-live. The platform keeps evolving with the agencies that use it: carrier formats that change, new products to put in the catalogue, synchronisations to keep fast as volume grows.

Describe the system. We'll tell you what we see.

Ten minutes, one question at a time. At the end, our honest read of the case. It's the filter, before the call.