Are you passionate about cutting-edge technology and eager to work on innovative projects? We are looking for an Embedded Software Developer to join the Electronics Design and Low-Level Software (EDL) section within the Control Electronics and Mechatronics (CEM) group at CERN, and be part of the White Rabbit Collaboration Bureau .
White Rabbit is a CERN-born technology and now an industry-standard that provides sub-nanosecond synchronisation and deterministic data transfer to distributed devices interconnected with a WR network.
You will enhance and maintain the basic blocks of this technology, including the software and firmware running on the White Rabbit Switch and the White Rabbit PTP Core , which are deployed in thousands of instances globally. You will also interact with institutes and companies world-wide to help them with integration and deployments of White Rabbit.
Your responsibilities:
-
Develop and maintain software and firmware for the WR Switch and the WR PTP Core.
-
Maintain GIT repos with dozens of developers.
-
Develop and maintain tools to automate calibration and tests of WR devices, including hardware in Continuous Integration (CI) pipelines.
-
Assist in the development of production tests to be conducted post-hardware manufacturing.
-
Be part of outreach activities in conferences and events to promote WR Technology and the WR Collaboration.
-
Support WR users world-wide.
-
Collaborate with your colleagues in the hardware/software co-design process, where HDL, firmware, Linux device drivers and host applications are developed and reviewed together.
More information here .
Your profile:
-
Development of embedded Linux software and bare-metal firmware.
-
Working with an embedded Linux distributions running on SoC of AMD/Xilinx FPGA.
-
Measurements with lab tools such as an oscilloscope.
-
Debugging of hardware.
Skills:
Required:
-
Low-level programming in C, including bare-metal.
-
Embedded Linux and Linux Device drivers.
-
Git-based development, code reviews, merge requests and CI pipelines.
-
Python.
-
Spoken and written English, with a commitment to learn French.
Advantageous:
-
Testing frameworks, PyTest.
-
Basics in FPGA development (VHDL, Verilog, SystemVerilog).
-
Capability of understanding PCB schematics.
-
Networking and synchronisation protocols (e.g. NTP, PTP).
Eligibility criteria:
-
You are a national of a CERN Member or Associate Member State .
-
By the application deadline, you have a maximum of two years of professional experience since graduation in Software Engineering (or a related field) and your highest educational qualification is either a Bachelor's or Master's degree.
-
You have never had a CERN fellow or graduate contract before.
-
Applicants without University degree are not eligible.
-
Applicants with a PhD are not eligible.