Software and Firmware Engineer (BE-RF-FB-2020-102-LD)
Company DescriptionAt 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 an Engineer with skills in both software and firmware? Would you like to contribute to the design and operation of critical equipment that accelerates the particles in the CERN accelerators? Then join the Feedback team in the Radio Frequency Group and realize your potential. Take Part!
CERN is looking for an Engineer, who will take a role in the design, implementation, commissioning, operation, maintenance and R&D work associated with software and firmware of low-level RF equipment (LLRF), digital signal processing and dedicated, custom high-performance computing equipment for CERN's accelerators.
These highly specialized systems require an innovative approach by actively seeking and proposing solutions to unstructured problems and having a vision how to utilize the state of the art technology in view of future applications in the accelerator complex.
The Engineer also takes a role in preparing the documentation for the systems of which he/she is in charge, communicating and presenting results to all relevant parties.
In the Beams Department, Radiofrequency Group, you will carry out the activities above, primarily, but not limited to, transverse feedback systems.
You will join:
- The Beams Department (BE), which hosts the Groups responsible for beam generation, acceleration, diagnostics, controls and performance optimisation.
- The Radio-Frequency (RF) Group of the Beams department, responsible for the operation of all RF systems to accelerate and control the particle beams in all CERN synchrotrons and linear accelerators, including projects for future accelerators and upgrades to the existing installations.
- The Feedback and Beam Control Section (FB) within the RF Group, responsible for the design and operation of all low power electronic systems needed for fast feedback control of the particle beams and to generate the drive signals to the RF power systems to accelerate and store the beams as well as to damp oscillations.
As a Software and Firmware Engineer in the BE-RF-FB Section, you will:
- Define and manage requirements, design, implement and support operation of high level software control of transverse feedback systems in various machines at CERN, including the control applications and user interfaces.
- Define and manage requirements, design, implement and support operation of high data rate acquisition systems, including the real time analysis of a multi-gigabit per second data streams in FPGAs, CPUs or GPUs. This includes monitoring of emerging, state of the art technologies in the industry (e.g. machine learning) and use their potential for the beam observation systems operated by the section.
- Design and develop firmware, drivers and software for custom made PCI-e cards for Linux platform.
- Design and develop FPGA firmware for custom made LLRF cards.
- Apply signal theory and mathematical techniques combined with knowledge of transverse single-particle dynamics to develop high level operation and diagnostics tools for transverse feedback systems.
- Take part in commissioning and operation of complex and highly specialized electronic and computer systems of the transverse feedbacks in various machines at CERN. This includes the follow-up of operational needs with stand-by service and participation in machine development sessions.
- Take part in development and maintenance of transverse and longitudinal simulation codes used by the section.
- Take part in definition and implementation of standardized workflows and software toolchains for firmware, driver and control application development.
Master's degree or equivalent relevant experience in the field of information technologies, electronic engineering or a related field.
- Demonstrated experience in design, implementation, operation and maintenance of a data acquisition system based on high performance computer hardware with custom interface cards. Minimum data rates in a range of Gbit/s with a consecutive real-time data analysis in CPU/GPU and following data storage are required. You have designed a complete signal chain from the FPGA firmware of a PCIe fibre receiver card, a Linux driver writing the received multi-Gbps data streams into the central RAM, to middleware software distributing these data into multiple threads on multiple CPUs/GPUs for a real time analysis, storage, or publication to the users.
- Experience in application of signal and systems theory to extract parameters from a system under observation, to use this state information as input for adaptive feedback control algorithms, or to present these results to the operators.
- Experience with the application of feedback systems in the particle accelerator field would be an advantage.
- Knowledge of programming techniques and languages in particular C, C++, Python.
- Design and simulation of FPGA-based electronics: knowledge of VHDL language with a complete FPGA design chain (Xilinx preferred).
- Good knowledge of build systems such as Make or Cmake.
- Deep understanding of efficient data structures and algorithms for low level, high performance data processing.
- Experience in design of distributed systems and parallel programming.
- Knowledge and application of signal theory, mathematical techniques and tools.
- Expertise in debugging software using gdb would be an advantage.
- Knowledge of shell and command languages (e.g. BASH) would be an advantage.
- Solving problems: identifying, defining and assessing problems, taking action to address them; producing workable and timely solutions that meet requirements; anticipating obstacles; assessing alternative solutions in order to have a fall-back plan.
- Demonstrating accountability: taking responsibility for own actions and decisions; working conscientiously and reliably; delivering on promises; standing up for own opinion and actions with well substantiated arguments.
- 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 being able to deal with ambiguous or unpredictable situations.
- Working in teams: cooperating constructively with others in the pursuit of team goals; balancing personal goals with team goals; seeking to help other team members when own work is done; supporting others ; gaining trust and collaboration from others.
- Spoken and written English: ability to draw-up technical specifications and/or scientific reports and to make oral presentations in English.
- Ability to understand and speak French in professional contexts is advantageous.
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 20.09.2020.
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:
- Participation in a regular stand-by duty, including nights, Sundays and official holidays.
- Work in Radiation Areas.
- Interventions in underground installations.
- A valid driving licence.
- Work during nights, Sundays and official holidays, when required by the needs of the Organization.
Job grade: 6-7
Job reference: BE-RF-FB-2020-102-LD
Benchmark Job Title: Computing Engineer