A European air traffic management organisation maintains a surveillance analysis platform used to assess the quality and behaviour of air traffic surveillance data. This Senior C++ / ATM Surveillance Software Architect role focuses on the platform's VERIF reconstruction and analysis capabilities, combining legacy C++ systems, tracking algorithms and software architecture to keep mathematically complex processing reliable while selected components are modernised.
The mission
The platform processes surveillance information for analysis of tracking, trajectory reconstruction and surveillance performance. Its scientific functions depend on filtering, state estimation, statistical analysis and tracker behaviour, so changes must preserve architectural coherence and mathematical correctness. The technical landscape includes complex legacy C++ applications, Git-based development, Jenkins CI/CD, automated C++ compilation and testing, with possible evolution towards web-based solutions.
You will act as a technical authority for defined parts of the platform and connect the production C++ implementation with the underlying surveillance models. Your day-to-day work will include reverse engineering existing code, analysing tracker behaviour, maintaining build and release processes, and validating changes against real or simulated surveillance data. You will work across architecture, configuration, testing, validation and technical documentation, contributing to the platform's long-term maintainability.
Your responsibilities
- Maintain and modernise legacy C++ components while preserving the correctness of tracking and trajectory reconstruction functions.
- Reverse-engineer existing code and algorithms to document their behaviour and support safe architectural decisions.
- Diagnose and correct tracker issues involving Kalman filtering, state estimation, statistical analysis or trajectory reconstruction.
- Automate C++ compilation, Google Test / GTest, integration testing and release workflows through Jenkins CI/CD.
- Validate, configure and release software versions using reproducible test evidence and clear acceptance criteria.
- Improve performance, resolve technical faults and apply AI-assisted software engineering techniques where they support controlled development and validation.
Your profile
Essential skills
- Bring at least 3 years of professional experience in ATM Surveillance, with practical understanding of surveillance data processing and tracking.
- Develop and maintain complex C++ applications, including legacy C++ systems requiring reverse engineering.
- Apply software architecture principles across a technically complex existing platform.
- Manage C++ compilation and automated testing through Software Build Management, Jenkins and CI/CD.
- Work with tracking and trajectory reconstruction algorithms, including Kalman filtering, state estimation and statistical analysis.
- Perform software validation and integration testing with Google Test / GTest, using simulated or production-like surveillance data.
- Use Git-based development environments and manage software lifecycle management, configuration, testing, validation and release processes.
Preferred skills
- Validate simulated trajectories / synthetic surveillance data and work with radar tracking systems, multi-sensor tracking, ASTERIX, sensor fusion or ATC systems.
- Use Documentation as Code with Markdown, LaTeX or Doxygen.
- Apply Artificial Intelligence or Machine Learning to software engineering, data analysis, testing or automation, with experience in scripting, software installation, performance improvement or technical troubleshooting.
Languages
- English: C1, written and spoken, including scientific and technical documentation.
Education
- Master's degree or equivalent experience in Computer Science, Engineering, Physics or Mathematics.