Real-Time Control System Software Engineer (TE-EPC-CCS-2020-66-LD)

  • Geneva, Switzerland
  • Contract

Company Description

At CERN, the European Organization 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. Find out more on

Job Description


Are you a talented software engineer, passionate about real-time software development and control systems? Are you also a competent and experienced Python developer? Are you comfortable in a collaborative development environment using git, Linux and continuous integration techniques? Then join the Electrical Power Converter group for a unique challenge as the next step in your career. CERN, take part!

You will join the TE Department, the Electrical Power Converter Group (TE-EPC), responsible for the power converters for the whole CERN accelerator complex, and the Converter Controls Software Section, which develops and supports the power converters' control software.

The CCS (Converter Controls Software) section is responsible for a large distributed control system for more than five thousand power converters and a dozen static VAR compensators. These range in power from a few watts to 150MW and are used to drive current through the magnets in the accelerators, transfer lines and experiments. The magnets guide and focus the particle beams, so precise control of the currents is critical.


As a software engineer in the CCS Section, you will be responsible for several pieces of software concerned with power converter controls, running on a large number of front-end computers. Furthermore, you will:

  • Support and extend the existing software running on computers interfacing with the hardware, built with CERN's FESA software framework.
  • Identify requirements for new software features in collaboration with the users and prepare written specifications to meet the needs of accelerator operators and power converter engineers.
  • Design, develop, test, deploy, document and maintain new software on the front-end computers.
  • Analyse existing software used in the development process of the section's real-time and embedded software and design and develop a new implementation, in a modern Python environment.
  • Supervise junior software engineers working on the same project.


Master's degree or equivalent relevant experience in computing or a related field.


  • Demonstrated experience in the development of real-time software using the C and C++ programming languages.
  • Demonstrated experience in the development of software in the Python language.
  • Demonstrated experience in the development of software under Linux.
  • Demonstrated experience of collaborative software development and testing using version control and continuous integration tools.

Technical competencies:

  • Knowledge of programming techniques and languages: C, C++, Python, an understanding of Perl would also be beneficial.
  • Development of software for embedded and real-time systems with/without OS.
  • Knowledge and application of software life-cycle tools and procedures.
  • Re-use, refactoring, integration and porting of existing software.
  • Testing, diagnosing and optimization of software.

Behavioural competencies:

  • Communicating Effectively: expressing opinions, ideas and suggestions with conviction and in a logical/structured manner; keeping to the point Listening actively to others and letting others speak Delivering presentations in a structured and clear way; adjusting style and content to the audience; responding calmly and confidently to questions.
  • Managing Self: taking initiative beyond regular tasks and making things happen.
  • Solving Problems: producing workable and timely solutions that meet requirements Anticipating obstacles; assessing alternative solutions in order to have a fall-back plan Recognizing what is essential; discriminating between important and peripheral information and being able to see the whole picture.
  • Achieving Results: delivering high quality work on time and fulfilling expectations Having a structured and organised approach towards work; being able to set priorities and plan tasks with results in mind Driving work / projects along and seeing them through to their conclusion.

Language skills:

Spoken and written English: the ability to draw-up technical specifications and scientific reports and to make oral presentations.

The ability to understand and speak French or the undertaking to acquire it rapidly.

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 Organization. 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 07.06.2020.

Employment Conditions

Contract type: Limited duration contract (5 years). Subject to certain conditions, holders of limited-duration contracts may apply for an indefinite position.

These functions require:

  • Work in Radiation Areas.
  • Interventions in underground installations.
  • A valid driving licence is required.
  • Work during nights, Sundays and official holidays, when required by the needs of the Organization.
  • Stand-by duty, when required by the needs of the Organization.

Job grade: 6-7

Job reference: TE-EPC-CCS-2020-66-LD

Benchmark Job Title: Computing Engineer

Privacy Policy