Le moteur qui facture, réécrit en marche.
Un SaaS qui facturait déjà sur un noyau de calcul sans tests ni typage, où chaque changement se vérifiait à la main. Nous l’avons réécrit sans arrêter le produit, en exigeant une sortie identique face au moteur précédent, et nous l’avons laissé sur Azure avec des environnements séparés et un déploiement avec rollback.
- Contexte
- SaaS financier - produit en service
- Fenêtre
- Réécriture par phases, avec bascule à la fin
- Livraison
- Noyau de calcul réécrit avec des tests, infrastructure décrite en code sur Azure, pipelines de déploiement et de rollback, et environnements séparés.
D’où sort chaque chiffre est détaillé ci-dessous.
D’où ça venait
Le produit était déjà sur le marché et facturait déjà par abonnement ; ce qui échouait n’était pas l’idée, c’était l’ingénierie autour du calcul. Le noyau n’avait ni tests ni typage, chaque changement se vérifiait à la main et déployer voulait dire entrer sur la machine. Dans un produit financier cela se traduit directement : toucher au moteur fait peur, et ce qui fait peur, on y touche peu.
L’approche
La réécriture n’a pas commencé par le code neuf mais par blinder l’ancien : nous avons recueilli des cas de calcul réels et les avons transformés en une suite qui exige une sortie identique, le contrat de toute la migration. Avec ce filet, nous avons réécrit le moteur dans un langage typé, en séparant le domaine de calcul de la couche de livraison, avec une revue de code à chaque changement, et les deux systèmes ont cohabité jusqu’à coïncider sur tous les cas de la suite. En parallèle, la plateforme : infrastructure décrite en code sur Azure, environnements séparés et pipelines de déploiement et de rollback.
Ce qui est resté en fonctionnement
Le même produit rendant les mêmes chiffres : c’était l’exigence, et c’est ce que la suite permet de vérifier. Ce qui a changé, c’est ce qu’on peut faire maintenant : toucher au moteur avec un filet qui alerte avant un utilisateur, et arriver en production par pipeline, avec rollback, sans entrer sur aucune machine.
Pièces de la livraison
- Suite de comparaison face au moteur précédent
- Infrastructure en code et environnements séparés
- Pipelines de déploiement et de rollback
Cas anonymisé. Nous travaillons sous NDA : nous ne publions ni le nom du client, ni son logo, ni aucune donnée permettant de l’identifier. Le détail technique, nous en parlons lors d’un appel.
On parle de votre projet ?
En 30 minutes nous passons en revue ce que vous voulez construire ou ce que vous avez déjà en cours, les données, les intégrations et ce qui manque pour que ça tienne quand les utilisateurs arriveront. Peu importe que le projet soit le vôtre ou celui d’un de vos clients : l’appel est le même.
Revue gratuite de 30 min, sans engagement. Nous signons un NDA au préalable si vous en avez besoin. Nous répondons le jour ouvré suivant.