Computing Fellowship: Embedded Software Engineer

  • Full-time

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.

Job Description

The LHC and the other CERN accelerators are composed of thousands of magnets, accelerating RF cavities, beam measurement instruments and 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 embedded devices running soft real-time software, connected by high performance communication networks, and synchronized with nanosecond precision.

You will join a team of highly qualified and professional software engineers who develop the core software and frameworks underlying this technical marvel.

Depending on your technical competencies and interests, you will work on one or more of the following:

  • Extend our current, ZeroMQ-based communication middleware to support additional standard industry protocols like OPC-UA and HTTP/2 or WebSocket, and add API bindings for Python clients and Web browsers (Technologies: OPC-UA, HTTP/2 or WebSocket, Python, C++, TypeScript).
  • Work on OASIS, our wide area, distributed Oscilloscope, and use White Rabbit, a novel, IEEE standard, Ethernet based network with sub-nanosecond precision, to synchronize and correlate the measurements taken in different locations in the accelerators. (Technologies: White Rabbit, C/C++, Linux, Python).
  • Work on the tooling for our C++ software that covers the full life cycle from building, dependency management, packaging, CI/CD and deployment. (Technologies: git, CMake, Conan, gitlab CI/CD, Docker).
  • Use PyQt or C++ Qt to develop GUIs for the development, testing and operational troubleshooting our real-time embedded software systems. (Technologies: Python, C++, Qt).

Qualifications

Eligibility criteria:

  • You are a national of a CERN Member or Associate Member State;
  • You have a Bachelor or Master’s degree in Computer Science, Engineering or other related field;
  • You have no more than 4 years’ experience after completing your highest diploma.

Essential skills and experience:

  • Proficiency in programming in C++11 and Python 3.6 or later;
  • Experience working with embedded and/or real-time software;
  • Familiarity with DevOps best practices and tools;
  • Exposure to working in a multi-disciplinary and multi-cultural team.

Desired technical skills:

  • Experience with Java and TypeScript;
  • Experience with communication networks and protocols;
  • Experience modernizing legacy software systems;
  • Exposure to working in a lean/agile environment.

Please note that CERN Staff members are not eligible to apply for a Fellowship.

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 six months (minimum) up to a maximum of 36 months.
  • A stipend ranging from 5,281 to 6,558 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 Life @CERN

Find out more here: https://hr-dep.web.cern.ch/content/life-cern

This is how you can 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. Please note this must be done before the closing date.

All applications should reach us no later than 5 April 2020.

Please make sure you have all the documents needed to hand as you start your application, as once it is submitted, you will not be able to upload any documents.

Privacy Policy