R&D Software Engineer on ROOT

Geneva, Switzerland
27 Oct 2022
23 Jan 2023

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.

Diversity has been an integral part of CERN's mission since its foundation and is an established value of the Organization.

This is your Quest. Deepen your knowledge and expertise faster than anywhere else on earth. Take Part!

Job Description

You are a software engineer with a firm understanding of the needs of physics analysis workflows. You will join the ROOT team and become a core developer on the ROOT I/O and distributed RDataFrame components in the context of the EP R&D programme. You will help creating fundamental, high-performance and easy-to-use data analysis tools for CERN’s future particle colliders. In particular, you will

  • Contribute to continuing development of RNTuple and RDataFrame through R&D to maximise performance on modern hardware and in distributed computing environments;
  • Explore new and better ways to seemlessly bridge between Python and C++ in ROOT's RDataFrame system;
  • Improve the usability and performance of distRDF, ROOT's distributed analysis system;
  • Participate in the ROOT team tasks of support and maintenance.

Video or link to the project and/or the team: https://root.cern & https://ep-rnd.web.cern.ch/


Eligibility criteria:

  • You are a national of a CERN Member or Associate Member State;
  • You have a Master’s degree and between 2 and 6 years’ experience or PhD with up to 3 years of relevant experience in computer science, physics or other related field;
  • You should have a working knowledge of English or French.

Skills and/or knowledge:

  • Proficient in the C++ and Python programming languages;
  • Proficient in the ROOT data analysis framework;
  • Experience in collaborative, production-grade software development (e.g. use of git, code reviews, unit testing);
  • Experience with distributed data analysis systems (such as Dask and ROOT distRDF);
  • Experience with I/O software libraries (such as object stores and scientific data formats).

Additional Information

What we offer:

  • An employment contract of in principle 24 months, with a possible extension up to 36 months;
  • On-the-job and formal training at CERN as well as in-house language courses for English and/or French;
  • A monthly stipend ranging between 6050 and 6650 Swiss Francs per month (net of tax);
  • Coverage by CERN’s comprehensive health scheme (for yourself, your spouse and children), and membership of the CERN Pension Fund;
  • Depending on your individual circumstances: installation grant; family, child and infant allowances; payment of travel expenses at the beginning and end of contract;
  • 30 days of paid leave per year.

How to Apply:

You will need the following documents to complete your application:

  • A CV;
  • A scanned PDF of your most recent relevant qualification;
  • We recommend to add two recent letters of recommendation, giving an overview of your academic and/or professional achievements. You can upload these letters at the time of application if you have them to hand. You will also be provided with a link as soon as you have submitted your application to forward to your referees to upload their letters confidentially.

The earliest expected start date for selected candidates is May 2023.

Ready to take part? Then please submit your application by 23 January 2023 at  midnight (12.00 AM CEST).