Join our teams and contribute to the renovation and development of real-time software for the LHC and injector Beam Loss Monitors (BLMs). Your work will focus on re-engineering existing codebases and updating hardware access mechanisms to support reliable beam instrumentation. Given the systems' critical role in accelerator protection, you will emphasise comprehensive testing, validation, and robust design. You will also design tools and graphical interfaces for expert users across CERN's accelerators.
Your responsibilities
- Re-engineer and refactor low-level C++ code across all BLM systems (LINAC4, PS, Booster, SPS, and LHC) to homogenise codebases and improve long-term maintainability.
- Conceive, design, and develop software for Continuous Integration testing and validation, including hardware鈥慽n鈥憈he鈥憀oop test benches.
- Add extended diagnostic and logging functionality to help analyse real-time software behaviour.
- Develop new Python tools and PyQt6 GUIs (graphical user interfaces) for system monitoring.
- Support the teams during commissioning and deployment within the accelerator control system.
More information here.
Your profile
- Hands鈥憃n experience in low鈥憀evel and real-time software development using C and C++.
- Experience in GUI development and data analysis with Python.
- Familiarity with unit testing, Continuous Integration, and hardware鈥慽n鈥憈he鈥憀oop development is an advantage.
- Experience using tools such as code assistants, particularly in the domain of code refactoring and continuous integration, is an advantage.
Skills
- C++ and Python.
- Knowledge of real-time principles.
- Good understanding of Object-Oriented Programming.
- Spoken and written English or French, with a commitment to learn the basics of the other language.
Eligibility criteria:
- You are a national of a CERN Member or Associate Member State.
- By the application deadline, you have a maximum of two years of professional experience since graduation in Software Engineering (or a related field) and your highest educational qualification is either a Bachelor's or Master's degree.
- You have never had a CERN fellow or graduate contract before.
- Applicants without University degree are not eligible.
- Applicants with a PhD are not eligible.