C++ Software Engineer (BE-CSS-FST-2025-230-LD)
CERN European Organization for Nuclear Research
Geneva
Key information
- Publication date:28 October 2025
- Place of work:Geneva
Job summary
Join CERN, the European Organisation for Nuclear Research, as a Software Engineer. Work on cutting-edge technology in a collaborative environment.
Tasks
- Develop C++ real-time frameworks for accelerator control systems.
- Engage with users to gather requirements and provide solutions.
- Maintain and enhance Accelerator Timing software for precision control.
Skills
- Master's degree in Computer Science or related field required.
- Proficient in C++ development with real-time systems experience.
- Familiarity with software quality assurance techniques and tools.
Is this helpful?
Company Description
At CERN , the European Organisation for Nuclear Research, physicists and engineers are probing the fundamental structure of the universe. Using the world's largest and most complex scientific instruments, they study the basic constituents of matter - fundamental particles that are made to collide together at close to the speed of light. The process gives physicists clues about how particles interact, and provides insights into the fundamental laws of nature.
Job Description
Introduction
Work on the C++ real-time frameworks that drive CERN’s accelerators — low-level, high-precision systems where nanoseconds matter. Take part!
As a Software Engineer, you will join a passionate team and take an important role in the evolution of the low-level real-time frameworks used to control accelerator hardware, developed in C++ and targeting Linux. You will also help bring the Accelerator Timing System to a new technological era, utilizing White Rabbit, a novel, IEEE standard, Ethernet based network with sub-nanosecond accuracy, pioneered by your future colleagues.
You will be involved in all aspects of the software life cycle, including user requirements gathering, design, development, testing and production deployment of the new solution, following our agile development process.
Functions
- Engage with end-users to understand their requirements and translate them into effective technical solutions.
- Shape and contribute to the evolution of our core C++ frameworks for real-time control and integration with diverse equipment and PLCs.
- Develop and maintain mission-critical Accelerator Timing software coordinating thousands of accelerator devices.
- Collaborate and share expertise with highly skilled software engineers within the CSS group and across the Accelerators & Technology sector.
- Investigate, diagnose, and resolve operational issues in close collaboration with end-users, from equipment specialists to operations teams.
- Take ownership of one or more key systems after an initial learning period, planning their evolution through active user engagement and follow-up.
- Support team growth by onboarding and mentoring junior developers.
Qualifications
Master's degree or equivalent relevant experience in the field of Computer Science or a related field.
Experience:
Required experience:
- Proven experience in C++ development.
- Experience applying software quality assurance techniques and practice with corresponding tools.
Desired experience:
- Experience in Java and/or Python development.
- Experience with communication protocols and networking stacks.
Technical competencies:
- Development of software for embedded and real-time systems with/without OS: using C++ in a Linux (or Unix-like) environment.
- Knowledge and application of software life-cycle tools and procedures: including Linux compilation toolchains and build systems.
- Knowledge of programming techniques and languages: including object-oriented programming principles.
- Testing, diagnosing and optimisation of software.
Behavioural competencies:
- Achieving Results: having a structured and organised approach towards work; being able to set priorities and plan tasks with results in mind.
- Learning and Sharing Knowledge: keeping up-to-date with developments in own field of expertise and readily absorbing new information.
- Working in Teams: working well in groups and readily fitting into a team; participating fully and taking an active role in team activities.
- Demonstrating Flexibility: adapting quickly and resourcefully to shifting priorities and requirements.
- Communicating Effectively: ensuring that information, procedures and decisions are appropriately documented.
Language skills:
Spoken and written English, with a commitment to learn French.
Additional Information
Eligibility and closing date:
Diversity has been an integral part of CERN's mission since its foundation and is an established value of the Organisation. Employing a diverse workforce is central to our success. We welcome applications from all Member States and Associate Member States .
This vacancy will be filled as soon as possible, and applications should normally reach us no later than 25.11.2025 at 23:59 CET.
Employment Conditions
Contract type: Limited duration contract (5 years). Subject to certain conditions, holders of limited-duration contracts may apply for an indefinite position.
Working Hours: 40 hours per week
Job Flexibility: Fully Onsite
This position involves:
- Stand-by duty, when required by the needs of the Organisation.
Job grade: 6-7
Job reference: BE-CSS-FST-2025-230-LD
Field of work: Software Engineering and IT
Benchmark Job Title: Computing Engineer