Le problème
En Italie, la formation médicale continue est strictement réglementée : chaque cours, chaque inscription et chaque crédit doivent rester traçables pendant des années. Le client gérait tout cela avec un logiciel de gestion conçu des années plus tôt, devenu le frein de l’entreprise — lent, difficile à modifier et impossible à faire évoluer sans casser autre chose. Le réécrire signifiait déplacer vingt ans de données réelles sans perdre un seul enregistrement.
Ce que j’ai développé
Une refonte complète de la plateforme de gestion, en repartant de zéro :
- La gestion des cours et des crédits pour la formation continue accréditée, avec les rapports exigés par l’autorité de tutelle.
- Les inscriptions, les participants et les attestations, en conservant intact l’historique complet de chaque professionnel.
- Une migration des données en production : 20 445 contacts et 39 970 inscriptions repris de l’ancien système et vérifiés enregistrement par enregistrement.
- Une plateforme distincte de données de recherche (SESP Data) pour un projet de recherche financé par l’UE, où la plateforme est elle-même l’un des livrables du projet et pas un simple outil.
Technologies utilisées
React côté front-end, NestJS et PostgreSQL derrière, sur un serveur dédié. La plateforme de recherche est une application Next.js. Aucun framework n’a été choisi par effet de mode : l’ancien système a échoué parce qu’il ne pouvait pas être modifié en toute sécurité ; le nouveau est donc typé de bout en bout et son modèle de données est écrit noir sur blanc plutôt que sous-entendu.
Pourquoi ce choix de méthode
La refonte a fonctionné en parallèle de l’ancien système au lieu de le remplacer du jour au lendemain. La formation continue a des échéances fixées par la loi : une bascule ratée n’aurait pas signifié une journée d’interruption, mais des professionnels perdant des crédits déjà acquis. Les données ont d’abord été migrées et contrôlées par rapport aux totaux de l’ancien système, et c’est seulement ensuite que le reste a bougé.


