Senior Fellowship: Software Engineer

European Council for Nuclear Research

Switzerland

January 30, 2022

Description

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 https:// home.cern.ch

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

Job Description

The CernVM File System (CVMFS) is a distributed file system optimized for large-scale software distribution. The technology has been developed for the world-wide delivery of the LHC experiment applications. Being open source software, CVMFS has also been adopted beyond the HEP community by scientific collaborations and private companies. CVMFS addresses software distribution in a much more efficient way than standard technologies such as container registries and package managers, with improvements, in typical use cases, of 1-2 orders of magnitude in some metrics.

The goal of this project is to address CVMFS scalability issues for data centers of up to 100,000 nodes, very large applications with >1 million file lookups during application startup and auxiliary data sets with a hot cache volume >100TB. Such workloads and environments are already found in industry and expected to appear in data centers for future HEP colliders.

As part of the core team of CernVM-FS, you will:

  • Investigate and improve the performance of CernVM-FS for large scale applications;
  • Develop new features and taking ownership of existing parts of the codebase to improve reliability, maintainability and performance;
  • Make use of new technology, such as eBFP, to solve performance challenges;
  • Have the opportunity to present your work at industrial or scientific conferences.
  • If this sounds interesting and fits your profile, feel free to contact Radu Popescu (radu.popescu@cern.ch) for more information

    Qualifications

    For this position you will need to meet the following requirements:

    Eligibility:

  • You are a national of a CERN Member or Associate Member State. A limited number of positions are also available to candidates from Non-Member States.
  • You have a MSc degree or PhD, with at least 4 years' relevant experience since the completion of your MSc (or the equivalent diploma which gives access to doctoral programmes), and a maximum limit of 10 years' experience after completion of your MSc in the field of computing.
  • Please note that CERN Staff members are not eligible to apply for a Fellowship
  • Essential skills and experience

    Software engineering background, experience with:

  • C++ programming on Linux;
  • Parallel and concurrent programming using the POSIX API (threads, processes, synchronization primitives);
  • Software engineering tools and methodology (source control, automated testing, continuous integration systems, container technology);
  • Strong interest in systems software, performance analysis, distributed systems.
  • Desired skills and experience (not required but would be advantageous)

  • File system software development (in kernel-space or FUSE);
  • Linux system performance analysis, eBPF programming;
  • Distributed system development and operation;
  • Go programming.
  • Additional Information

    CERN would very much like to benefit from your expertise, commitment and passion. In return, CERN will provide you with:

  • An employment contract for between 6 months (minimum) up to 24 months, with a possible extension up to 36 months
  • A stipend ranging from 7,201 to 8,178 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: an installation grant, family, child and infant allowances as well as travel expenses to and from Geneva.
  • 2.5 days of paid leave per month.
  • Your future Life @CERN

    Get a glimpse of what it's like to work at CERN : https: // careers.cern/benefits and https: // careers.cern/our-people

    This is how you can apply:

    You will need the following documents (in PDF format) to complete your application:

  • A CV.
  • 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. Please note this must be done before the closing date.
  • All applications should normally reach us no later than 30 January 2022 at noon (12:00 CEST).