Software Engineer (BE-CSS-CPA-2023-30-LD)
- Organization: CERN - European Organization for Nuclear Research
- Location: Geneva
- Grade: Mid level - Grade 5 - Technical or Administrative roles - Only open to Nationals of all CERN Member States and Associate Member States
- Accounting (Audit, Controlling)
- Information Technology and Computer Science
- Closing Date:
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 http://home.cern.
Are you a skilled and experienced Software Engineer? Are you excited to make key contributions to the controls system of the LHC and the other CERN accelerators? Join CERN’s Controls Software & Services group, to work on mission critical software systems for the largest particle physics laboratory in the world. Take Part!
The CERN accelerator complex is composed of thousands of magnets, accelerating RF cavities, beam measurement instruments, protection systems and many other devices. They must all function in a sophisticated, well-coordinated fashion to produce, accelerate and deliver the high-energy particle beam to the numerous physics experiments.
Our team is in charge of systems and services that acquire, process and archive huge amounts of data from all these devices. We provide frameworks that enable our physicists, operators and device experts to monitor the proper functioning of their devices and to proactively spot potential problems before they can affect operations. You will have the opportunity to contribute and influence the design and modernization these system and frameworks, imprinting your remarkable engineering skills on solutions that will serve for the coming decades.
You will join:
- The BE Department, responsible for the beam generation, acceleration, diagnostics, controls and performance optimization for the LHC and its injector accelerators.
- The CSS Group, responsible for providing and supporting the controls software and infrastructure used to operate and maintain these particle accelerators 24 hours a day.
- The CPA Section, a dynamic and quality-oriented agile team, responsible for mission-critical software services and frameworks for communication, processing and archival of large quantities of accelerator device data.
As a Software Engineer, you will join a passionate team, and take an important role in the development, evolution and operation of the server-side Java software that ensures the safe operations of the accelerators. You will be involved in all aspects of the software life cycle, including user requirements gathering, design, development, testing, maintenance and operations, following our agile development process. You will also help to gradually migrate our systems to a new technological era using Kubernetes.
In particular, you will:
- Communicate with our end-users - physicists, accelerator operators and equipment specialists - to understand their needs and help translate these into appropriate software solutions.
- Shape and contribute to the development and evolution of our software systems and frameworks for monitoring our accelerators and processing the data they produce.
- Maintain existing software systems and ensure reliable operations on a 24/7 basis. Investigate, diagnose, and resolve operational problems in collaboration with end-users.
- Modernize our systems by migrating them to use state-of-the art technology.
- Participate in the selection and mentoring of junior developers.
- Collaborate and share knowledge and solutions with highly skilled software engineers both inside the CSS group and across the Accelerators & Technology sector.
Master's degree or equivalent relevant experience in the field of Computer Science or a related field.
The following are required for this post:
- Extensive experience in applying Java and the Spring ecosystem to develop mission critical software systems.
- Proven experience applying modern software architecture principles to the development of distributed systems.
- Experience writing clean and easy to maintain code and applying the related principles.
- Experience in (automated) quality assurance and applying the corresponding tools.
- Experience actively promoting the above principles and your expertise by sharing knowledge with colleagues, mentoring junior developers, and engaging with end-users.
The following are considered assets but are not mandatory:
- Experience in operating mission critical software systems on a 24/7 basis.
- Experience with Python and its ecosystem.
- Experience with Kubernetes and Docker or podman.
- Knowledge of programming techniques and languages: on backends
- Knowledge and application of software life-cycle tools and procedures: including DevOps.
- Re-use, refactoring, integration and porting of existing software.
- Testing, diagnosing and optimization of software.
- Monitoring and troubleshooting of operational software systems.
- Achieving results: having a structured and organised approach towards work; being able to set priorities and plan tasks with results in mind. Delivering prompt and efficient service taking into account customer needs.
- Learning and sharing knowledge: taking steps to expand knowledge in other areas of expertise beyond own field. Sharing knowledge and expertise freely and willingly with others; coaching others to ensure knowledge transfer.
- Working in teams: cooperating constructively with others in the pursuit of team goals; balancing personal goals with team goals. Building and maintaining constructive and effective work relationships. Contributing to promoting a positive atmosphere in the team through an optimistic and constructive attitude; addressing issues.
- Demonstrating flexibility: being willing to work on different projects simultaneously. Actively participating in the implementation of new processes and technologies.
Spoken and written English, with the ability to draw-up technical specifications and/or scientific reports, and/or to make oral presentations. The knowledge of the French language or the willingness to acquire this rapidly 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 midnight CET 2nd April 2023.
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.
Job grade: 6-7
Job reference: BE-CSS-CPA-2023-30-LD
Benchmark Job Title: Computing Engineer