Industrialization of business APIs
Projet started in:
Leader of the local insurance market, Foyer Assurances wanted to review the technical architecture and development process of its APIs. This project is part of several strategic projects undertaken to ensure its transition to the digital age.
The number of users and applications that consume and feed the legacy information system in data is growing exponentially. The current architecture cannot guarantee a high level of performance adapted to the data use, especially in terms of time response.
In order to initiate a transition to SI Legacy digital uses, we accompanied the CTO team in the deployment of a new technical architecture.
We produced a POC to confirm the IT system’s new architecture. The following issues were addressed:
Performance: we offered a new technical architecture based on Kafka technology. It is possible to manage the multitude of events used by the applications and to guarantee a scalable IT system.
Progressive transition: we defined and validated the architecture of a data synchronization brick between the IT legacy system and the new IT system to ensure the transition period.
Homogenization of API development: we have developed a CQRS framework based on event-sourcing to impose rules / protocols that the APIs will use.
Self-documentation: we included self-documentation of all API end-points in the framework development, to facilitate their integrability. This optimizes development costs and facilitates maintenance.
Self-discoverability: we implemented these APIs following the principles of REST architecture, including HATEOAS. Thus, it is possible to navigate in the APIs through hypermedia links without even knowing their existence.
- Validation of the suggested architecture during the POC for the transitional IT system
- Framework validation and improvement through the POC
- The overall project has been tested, improved and validated. The developments are ongoing.
Étienne Vallette d'Osia - Software Architect
" For me, it is an innovative project, completely customized where we invented everything. "
What kind of impact did this project have on your job?
The project allowed me to focus on the purely technical side of the product, as provider of a technical solution. Although the framework was created for developers, the project’s main goal was to come up with an easy to use tool. I had to think "differently" to create it so that everyone could run it.
It was also the first time I played with hypermedia, which was a good practice for my knowledge of this concept.
I was able to refine my expertise in the implementation of event-driven architecture, event-sourcing, DDD and automatic generation of documentation from code.
What is cutting edge about this project?
There are some existing concepts for each of the technical bricks we used, but the technical challenge was to bring them together. For me, it is an innovative project, completely customized where we invented everything.
How does this project bring a client satisfaction?
Our client’s need was very clear - tooling its developers with a robust and viable framework. We’ve respected our engagement and users can now experiment new practices with this framework they quickly adopted. In addition, the product is scalable. It was easy for us to bring rapid corrections, in iterative mode, from the customers’ feedbacks gathered during the last sprint. Today, the internal team that took over the project is autonomous and can make fast changes and improvements.