
Leading Digital Transformation at SNCF: Building the Future of TGV Maintenance
When I joined SNCF Voyageurs in March 2024, the challenge was clear: transform decades of maintenance operations into a modern, digital-first system. The SPID Program wasn't just another project—it was about reimagining how France's iconic TGV trains are maintained.
The Challenge
The existing system was a patchwork of manual processes and legacy applications. Maintenance scheduling, tracking, and execution were fragmented across multiple systems. We needed to build something that could handle the complexity of TGV maintenance while being intuitive enough for daily use by maintenance teams.
Architecting for Scale
From day one, I knew this required a microservices architecture. We chose NestJS as our framework, deployed on Kubernetes for orchestration. But the real innovation came with our communication layer—Kafka became the nervous system of our platform, enabling real-time event-driven communication between services.
The architecture consisted of two core applications: - ProgOne: Managing maintenance appointments and the complete maintenance lifecycle - H00: Handling milestones, slot management, and temporal planning
The Connector System
One of my proudest achievements was designing the connector system. We needed real-time detection of MongoDB changes across the platform. Instead of scattered writes, I architected a centralized write service called Persist. This microservice became the single source of truth for all data modifications, ensuring data consistency and enabling powerful audit trails.
Frontend Excellence
On the frontend, we leveraged the latest Angular version to build intuitive interfaces for operational monitoring and control. The screens needed to be fast, responsive, and provide real-time feedback to maintenance teams working on the ground.
DevOps Culture
I established comprehensive CI/CD pipelines using GitHub Actions, implemented rigorous code review processes, and set up monitoring dashboards. Quality wasn't an afterthought—it was built into every step of our development process.
The Impact
Today, maintenance teams across France use our platform daily. What used to take hours of manual coordination now happens in minutes. The system processes thousands of maintenance events daily, and the Kafka-based architecture ensures everything stays in sync in real-time.
Key Takeaways
Building large-scale systems requires more than technical skills. It demands understanding the domain, collaborating with stakeholders, and making architectural decisions that will stand the test of time. The SPID Program taught me that the best technology is the one that solves real problems for real people.