Software Engineer - Distributed Software Systems (TE-MPE-CB-2022-150-LD)
- Geneva, Switzerland
Are you a passionate Software Engineer? Are you motivated by a unique and challenging environment, with large, distributed software systems that control the Large Hadron Collider (LHC) and other particle accelerators at CERN? Then join the MPE Group in the Technology Department to work on Interlock, Machine Protection and Hardware Commissioning Systems, which help to safely operate the LHC and protect it from being damaged by the huge amounts of energy stored in the particle beam and in the superconducting magnets.
See also: https://mpe.web.cern.ch
As a Software Engineer in the Controls and Beam Studies for Protection Section, you will become a member of a highly cohesive software team of 10 software engineers that design mission-critical dependable software systems for the equipment and magnet protection systems developed by the MPE group.
The Interlock and Machine Protection systems include distributed software for the supervision and monitoring services for LHC magnets and other equipment, as well as analysis of accelerator data. The Hardware Commissioning software orchestrates and executes over 10’000 function tests and analyses the test results.
We are a team of software engineers, quality-oriented, agile and professional. Joining us you will take a major role in the development and evolution of the MPE systems. In particular you will:
- Design highly dependable distributed software systems to guarantee the reliable and efficient commissioning and operation of CERN's equipment, magnet protection and interlock systems;
- Proactively survey technological developments to assure a high level of quality and the coherence of the implementations with respect to common standards and the CERN controls environment;
- Build relationships with the engineers who designed the LHC magnets and other accelerator equipment and with the physicist and technicians who operate the accelerators, defining together the required features, and supporting the commissioning and operation of the software components deployed in CERN’s accelerator complex;
- Improve continuously our software systems and monitor their performance;
- Share knowledge by supervising students and graduates.
Master's degree or equivalent relevant experience in the field of Computing, Physics or Engineering or a related field.
- Extensive experience with the latest version of Python
- Proven experience in building new software systems and further developing existing ones
- Demonstrated experience applying software quality assurance techniques and practices
- Proven experience as a software engineer within an Agile and/or highly collaborative environment
- Experience with Java (Spring Framework), C++ and Relational Database Management Systems would be an asset
- Development of application software: designing dependable software following SOLID principles or similar.
- Knowledge and application of software life-cycle tools and procedures: agile methodologies (Kanban, Scrum), Continuous Integration and Continuous Delivery, unit and integration testing, and refactoring.
- Identification and selection of relevant emerging ICT technologies: data analysis, GUIs and communication protocols.
- Testing, diagnosing and optimization of software: support of operational systems.
- Capturing and analysis of requirements for information and communications technology (ICT) systems: working in partnership with end users to understand their needs and providing corresponding technical solutions.
- Working in teams: cooperating constructively with others in the pursuit of team goals; balancing personal goals with team goals. Working well in groups and readily fitting into a team; participating fully and taking an active role in team activities.
- Communicating effectively: expressing opinions, ideas and suggestions with conviction and in a logical/structured manner; keeping to the point.
- Demonstrating flexibility: adapting quickly and resourcefully to shifting priorities and requirements. Readily absorbing new techniques and working practices; proposing new or improved ways of working.
- Achieving results: having a structured and organised approach towards work; being able to set priorities and plan tasks with results in mind. Being rigorous and producing quality results at first attempt.
- Learning and sharing knowledge: keeping up to date with developments in own field of expertise and readily absorbing new information. Thinking "out of the box" and proposing fresh ideas, insights and methodologies.
English spoken and written, with the ability to draw-up specifications, reports, and to make oral presentations. The ability to understand and speak French or an undertaking to acquire it would be an advantage.
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 15.01.2023 at Midnight CET.
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 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-MPE-CB-2022-150-LD
Benchmark Job Title: Computing Engineer