Software Engineer - Software Reliability (TE-MPE-CB-2026-93-GRAP)

Contribute to the design of particle accelerators through Python software frameworks.

CERN - European Organization for Nuclear Research

Open positions at CERN
Logo of CERN

Overview

Contribute to the design of particle accelerators through Python software frameworks.

You have:

  • Demonstrated experience developing scientific or large-scale software systems.
  • Professional background in Computer Science, Software Engineering or a related field.
  • Master's degree with 2 to 6 years or a PhD with no more than 3 years of post-graduation professional experience.
  • Spoken and written English, with a commitment to learn French.
  • Exposure to reliability, availability, risk modelling, or related domains is advantageous.

Contract

This is a Entry Level contract. More about Entry Level contracts.

Job Description

You will work at the interface between Software and Reliability Engineering, contributing to the technical design of the next generation of particle accelerators, by developing and maintaining Python-based software frameworks for availability modelling, fault data analysis, and reliability-driven design across multiple accelerator subsystems.

In parallel, you will contribute to R&D of software-oriented reliability solutions for large-scale accelerator systems, exploring new modelling approaches, data-driven methods, and verification / validation techniques tailored to complex cyber-physical infrastructures.

Your responsibilities:

  • Design, implement, and maintain production-quality Python software supporting reliability, availability, and maintainability (RAM) analyses for complex accelerator systems.
  • Contribute to availability modelling, fault and downtime data analysis, and reliability-driven design studies across multiple accelerator domains.
  • Develop, extend, and refactor modular, well-documented, and testable software frameworks that support accelerator design and validation workflows.
  • Research, prototype, and help formalise software-oriented reliability methods for large-scale cyber-physical systems, including data-driven, simulation-based, and verification-oriented approaches.
  • Integrate reliability models with operational data sources, simulation pipelines, and system-level workflows to support performance and design trade-off studies.
  • Apply and promote modern software engineering practices, including structured version control workflows, code review, automated testing, and continuous integration.
  • Collaborate with accelerator physicists, system engineers, and reliability specialists to translate engineering requirements into robust software solutions.
  • Contribute to technical documentation, internal reports, and design reviews, supporting accelerator design, validation, and long-term planning activities.

Your profile:

  • Demonstrated experience developing scientific or large-scale software systems with a strong focus on code quality, robustness, maintainability, and production readiness.
  • Built simulation and analysis pipelines with consideration for assumptions, uncertainties, and reproducibility.
  • Conducted applied, software-driven research, including evaluating methods, prototyping solutions, validating models, and translating research into robust production-quality software.
  • Derived actionable engineering insights from complex datasets through analysis, modelling, and simulation techniques.
  • Contributed to collaborative engineering environments through code reviews, shared development workflows, and clear technical communication.

Skills:

  • Advanced Python proficiency for scientific and engineering applications, producing clear, modular, reusable, well-tested, and maintainable code.
  • Strong software engineering practices, including Git workflows, code reviews, automated testing, CI pipelines, API design, and documentation.
  • Experienced in data analysis, modelling, and simulation using scientific Python tools such as NumPy, pandas, and SciPy.
  • Skilled in analysing complex, imperfect real-world datasets, including data cleaning, validation, reproducibility, and uncertainty awareness.
  • Strong technical communication and writing skills, including documentation, reports, and design contributions.
  • Effective collaborator in multidisciplinary teams, while also able to work autonomously.
  • Interest in research-driven problem solving, modelling approaches, and long-term scientific projects.
  • Exposure to reliability, availability, risk modelling, or related domains is advantageous.
  • Spoken and written English, with a commitment to learn French.

Eligibility criteria:

  • You are a national of a CERN Member or Associate Member State.
  • You have a professional background in Computer Science, Software Engineering (or a related field) and have either:
    • a Master's degree with 2 to 6 years of post-graduation professional experience;
    • or a PhD with no more than 3 years of post-graduation professional experience.
  • You have never had a CERN fellow or graduate contract before.

Additional Information

Job closing date: 24.06.2026 at 23:59 CEST.

Contract duration: 24 months, with a possible extension up to 36 months maximum.

Working hours: 40 hours per week

Job flexibility: Fully Onsite

Target start date: 01-September-2026

Job reference: TE-MPE-CB-2026-93-GRAP

Field of work: Software Engineering and IT

Benchmark job: 200020 - Computing Engineer

Global Benefits

  • A monthly stipend between 6372-7004 Swiss Francs per month (tax free) depending on your degree.
  • 30 days of paid leave per year plus 2 weeks annual closure.
  • Coverage by CERN’s comprehensive health insurance scheme (for yourself, your spouse and children), and membership of the CERN Pension Fund.
  • Family, child and infant monthly allowances depending on your individual circumstances.
  • A relocation package (installation grant and travel expenses) depending on your individual circumstances.
  • Possibility to extend your contract up to 36 months.
  • On-the-job and formal training including language classes.

Overview of CERN - Discover a world where the impossible is made possible!

At CERN, the European Organization for Nuclear Research, we are pushing the frontiers of science and technology. Our groundbreaking work brings together not only physicists but also a diverse range of professionals from engineering, technical, scientific, and administrative fields. Together, we foster an environment where innovation and collaboration thrive.

Every day, we face exciting new challenges and opportunities to contribute to cutting-edge research that shapes our understanding of the universe. We meet these challenges through the diverse perspectives within our teams, ensuring every contribution is valued and driving our shared sense of inclusion and purpose. Diversity is a core value of CERN since its foundation, and it remains central to our mission and continued success.

If you are ready to be part of a dynamic, inclusive community pushing the boundaries of knowledge, CERN is the place where your curiosity and skills can thrive. Be part of our mission to uncover what lies at the heart of the universe! TAKE PART!

More information about us, here: careers.cern

Potential interview questions

Can you describe a complex software project you have completed? The interviewer wants to understand your experience with complex software systems. Discuss the project details, your role, and the technologies used.
How do you ensure code quality in your projects? This question assesses your knowledge of software engineering practices. Pro members can see the explanation.
Can you give an example of a time you had to collaborate with a multidisciplinary team? Pro members can see the explanation. Pro members can see the explanation.
What approaches do you take when dealing with uncertain data? Pro members can see the explanation. Pro members can see the explanation.
How do you approach learning a new programming language or technology? Pro members can see the explanation. Pro members can see the explanation.
What is your experience with automated testing? Pro members can see the explanation. Pro members can see the explanation.
Describe a situation where you had to troubleshoot a technical issue. Pro members can see the explanation. Pro members can see the explanation.
How do you document your software projects? Pro members can see the explanation. Pro members can see the explanation.
Added 11 hours ago - Updated 1 hour ago - Source: careers.cern