OBS! Ansökningsperioden för denna annonsen har
passerat.
Arbetsbeskrivning
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 http://home.cern.
Job Description
Introduction
Are you a skilled Software Engineer? Do you want to contribute to the unique challenge of making all the CERN particle accelerators function like a gigantic distributed clockwork with nanosecond precision? Then join the timing team in the beam controls group and realize your potential. Take Part!
The CERN accelerator complex is composed of thousands of magnets, accelerating RF cavities, beam measurement instruments and much, much more equipment, which function in a sophisticated, well-coordinated fashion to produce, accelerate and deliver the high energy particle beam to the big physics experiments.
From a computing point of view, this is a huge and complex distributed system with thousands of devices running real-time software, connected by high performance communication networks, and synchronized with nanosecond precision. The so-called Accelerator Timing System coordinates all these devices, just like a conductor coordinates the musicians in a symphonic orchestra.
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 CO Group, responsible for providing and supporting the controls hardware, software and infrastructure used to operate and maintain these particle accelerators 24 hours a day.
- The SRC Section: a dynamic and quality-oriented agile team, responsible for the Accelerator Timing System and other mission-critical software for communication and real-time accelerator control.
Functions
As an Embedded Software Engineer in the SRC Section, you will join a passionate team, and take a key role in bringing the Accelerator Timing System to a new technological era. For this, you will use White Rabbit, a novel, IEEE standard, Ethernet based network with sub-nanosecond accuracy, pioneered by your new colleagues in the CO group. You will be involved in all aspects of the software life cycle, including user requirements gathering, design, development, testing and production deployment of the new solution, following our agile development process.
In particular, you will:
- Communicate with the end-users of the Accelerator Timing System to understand their needs and help translate these into appropriate solutions.
- Engage with the world-class hardware engineers who invented the White Rabbit network and take part in defining the functional behaviour of the White Rabbit Hardware modules.
- Develop embedded software to integrate the White Rabbit hardware into the Timing System.
- Participate in the development of the Accelerator Timing software that uses White Rabbit to coordinate the thousands of accelerator devices.
- Collaborate and share knowledge and solutions with highly skilled and motivated software engineers inside and outside the CO group.
- Investigate, diagnose and resolve operational problems in collaboration with the end-users of the Accelerator Timing System.
- Mentor more junior developers.
Qualifications
Master's degree or equivalent relevant experience in the field of computing, computer science, software engineering or a related field.
Experience:
The experience required for this post is:
- Proven experience in C++ development in a Linux (or Unix-like) environment.
- Proven experience in developing real-time solutions.
- Experience in C programming for embedded systems, System-on-Chip (SoC) or simple microprocessors (without OS).
- Experience applying software quality assurance techniques and practice with corresponding tools.
The following are considered assets but are not mandatory:
- Experience in mentoring junior team members.
- Experience of Bridged Local Area Network technologies (IEEE 802.1Q).
- Experience of White Rabbit.
- Experience of modern FPGA development.
- Experience in Java and/or Python development.
Technical competencies:
- Development of software for embedded and real-time systems with/without OS
- Knowledge and application of software life-cycle tools and procedures: including DevOps.
- Testing, diagnosing and optimization of software
- Monitoring and troubleshooting of operational software systems.
Behavioural competencies:
- Achieving Results: having a structured and organised approach towards work; being able to set priorities and plan tasks with results in mind
- Learning and Sharing Knowledge: keeping up-to-date with developments in own field of expertise and readily absorbing new information Sharing knowledge and expertise freely and willingly with others; coaching others to ensure knowledge transfer Thinking "out of the box" and proposing fresh ideas, insights and methodologies
- Working in Teams: understanding when teamwork is required to achieve the best results; including others accordingly and sharing information Working well in groups and readily fitting into a team; participating fully and taking an active role in team activities
- Demonstrating Flexibility: adapting quickly and resourcefully to shifting priorities and requirements Instigating and promoting change as an opportunity for organisational development
Language skills:
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.
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.
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.