At CERN, the European Organisation 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.
Webinar Highlight
Freddie tells us all about CERN!
Job description
We are offering a position in the Physics Software Engineering section of the Computing for Experiments group in the CERN IT department (IT-CE-PSE) on Performance Software Engineering in the realm of high energy physics data simulation.
The work on this post will be carried out in the context of the NextGen project, a collaboration between the LHC experiments and the CERN Research and Computing Departments. NextGen explores the use and impact of high-performance computing architectures in data simulation and data processing for the LHC experiments with a focus on the upcoming High Luminosity (HL-LHC) data taking phase at the CERN Large Hadron Collider.
The simulation of particle collisions is one of the main consumers of computing resources for LHC experiments. Given the expected increase in the required statistics, accuracy and complexity for future simulation, and to stay within the forecasted computing budget, the throughput of simulation software packages needs to increase substantially.
The successful candidate will join a team of software engineers and physicists that addresses this challenge. Together, you will speed up software packages for Monte Carlo (MC) event generation with a focus on the Madgraph event generator suite.
Current and future tasks tackled by the team are at the intersection of theoretical/computational physics and computer science. In order to profit from the latest computing hardware, adaptations or re-engineering of software in aspects such as data structures, parallelisation of the workflow or task scheduling are needed. This work is guided by the requirements of experimental analyses and takes into account the latest developments in theoretical predictions.
In case of interest, training on data science, programming languages, software engineering concepts and computing architectures is available and can be provided via various training programs.
Your responsibilities
Analyse and profile existing simulation code bases and develop strategies for improving their throughput.
Implement latest software engineering concepts, leveraging on compute accelerators such as GPUs, modern CPU architectures and heterogeneous compute platforms.
Interact and collaborate with experts in the theory, experimental physics and software engineering communities at CERN and world-wide.
Supervise students on software development tasks and projects.
Your profile
Preferably a PhD in Theoretical or Particle Physics or Master's Degree with equivalent work experience with a strong background in numerical simulation.
Proficiency in working with computing hardware accelerators and modern computing architectures, including heterogeneous compute platforms.
A proven track record in performance software engineering for simulation applications in C++ and GPU programming languages such as CUDA or HIP.
Knowledge of state of the art profiling tools for heterogeneous computing architectures.
Experience with the Madgraph event generator software as a developer or user is highly valued.
Skills:
Proficiency in modern C++ (up to C++23), GPU programming with CUDA and HIP, and Python for scripting, analysis and tooling is essential.
Knowledge of hard scattering processes and the perturbative order of their matrix element calculations in Monte Carlo event generators is strongly desirable.
Familiarity with Fortran is an advantage.
Fluent in English.
Spoken and written English or French, with a commitment to learn the basics of the other language.
Eligibility criteria
You have a professional background in Theoretical or Particle Physics (or a related field) and have either:
a Master's degree with 2 to 6 years of post-graduation professional experience;
or a PhD with no more than 3 years of post-graduation professional experience.
You have never had a CERN fellow or graduate contract before.
This position involves:
Stand-by duty, when required by the needs of the Organisation.
Work during nights, Sundays and official holidays, when required by the needs of the Organisation.
What we offer
A monthly net stipend of either 6,372 or 7,004 Swiss Francs per month depending on your degree.
30 days of paid leave per year plus 2 weeks annual closure.
Coverage by CERN’s comprehensive health insurance scheme (for yourself, your spouse and children), and membership of the CERN Pension Fund.
Family, child and infant monthly allowances depending on your individual circumstances.
A relocation package (installation grant and travel expenses) depending on your individual circumstances.
Possibility to extend your contract up to 36 months.
On-the-job and formal training including language classes.
We've signed the Gradcracker feedback pledge.
(This means that we will supply feedback if requested after an interview.)