Industrial C++ at Amadeus
"Back to the metal. Optimizing C++ in a world where milliseconds are currency."
Reconnecting with the metal
After a lot of high-level automation and Python scripts, stepping into the Amadeus codebase in Sophia Antipolis felt like a reality check. When you are dealing with a system that handles global travel traffic, "good enough" code doesn't exist. This was a return to the low-level world where performance, memory management, and reliability are the only metrics that matter.
It was refreshing to exercise the low-level muscles I had developed while building my 3D Renderer. The context shifted from rendering pixels to processing massive datasets, but the core challenge remained the same: squeeze every ounce of efficiency out of the hardware.
What I actually shipped
Over the course of the contract, I designed, developed, and delivered three components to production — each going through the full lifecycle of design, implementation, code review, testing, and deployment.
A significant part of the work involved EDIFACT message processing — the decades-old inter-system exchange standard that still underpins a large chunk of the global travel industry. Understanding and extending that layer meant reading a lot of legacy code and being extremely careful about backward compatibility.
The most technically interesting challenge was an in-depth analysis of a legacy subsystem with the goal of designing a translation layer — a bridge between the existing architecture and a set of modern components being built in parallel. That kind of work requires you to fully understand a system that predates you, document its implicit contracts, and design a clean interface without touching the original. It's slow, careful, and deeply satisfying when it clicks.
The test suite
I spent a substantial amount of time on Python-based non-regression tests — both writing new ones and maintaining the existing suite, which runs into the thousands of test cases across a very large codebase. On a platform of this scale, a regression in a core component doesn't just affect one client — it affects every airline, hotel chain, and travel agency running on the system.
That context makes you deeply careful. Every optimization has to be proven safe before it moves forward. The pipeline — Jenkins, Bitbucket, automated gates — enforces that discipline whether you like it or not.
The corporate engine
Working in a large international environment meant navigating a heavy-duty tech stack and a SAFe Agile framework with cross-functional teams — PDA, PDEF, and QA dev — all moving in coordination. Constant collaboration, constant alignment.
The code reviews were easily the most valuable part of the experience. There is a specific kind of growth that happens when a senior architect shreds your pull request. It is humbling, but it is the fastest way to learn architectural patterns that actually scale.
The bottom line
Amadeus reminded me that professional engineering is a team sport. Two years on a codebase of this scale — shipping components, maintaining thousands of tests, and navigating legacy systems — builds a kind of rigor that's hard to develop anywhere else. The constraints are real, the stakes are real, and the code has to be right.