Embedded software/systems engineer in quantum experimental control and automation

Updated: about 10 hours ago
Job Type: Permanent

In der aktuellen Covid-19 Situation laufen die Rekrutierungen weiter. Es kann dabei allerdings zu Verzögerungen kommen. Vielen Dank für Ihr Verständnis.


80%-100%, Zurich, fixed-term

The joint ETH Zurich-Paul Scherrer Institute Quantum Computing Hub explores long-standing challenges in quantum computing, developing new technology and approaches that will benefit from a coherent, farsighted vision. It will provide services to the quantum community through collaborations with academia and industry. It consists of two laboratories specialising in the two leading QC platforms, superconducting circuits and trapped ions. This position will be in the trapped-ion team and will involve close collaboration with the TIQI group at ETH Zurich, which conducts closely related research in quantum information science and has a successful track record of developing and operating quantum computing systems. The strong synergies between the experience and infrastructure at ETH and the novel approach at PSI will benefit both efforts.


Project background

The trapped-ion team is developing systems to control, calibrate, automate, and manage several new trapped-ion quantum computing setups, each aiming to handle tens or hundreds of qubits. We are looking for an embedded software/systems engineer to develop and maintain embedded firmware and software for the low-level devices in these setups, as well as helping to shape the system architecture of the experimental control. Embedded devices are used extensively in trapped-ion experiments: generating hundreds of synchronised RF and DC waveforms, rapid digital and analog data acquisition, real-time monitoring and control, mixed-signal PID servo-loops, and controlling lower-level hardware.


Job description

A quantum computing experiment is operated through a multitude of electronic and computational devices, mostly using systems-on-chip running embedded Linux or bare-metal software along with custom FPGA firmware, networked together to form an experimental control system running across the laboratory. Standalone embedded CPUs running bare-metal software or Linux are also used, in devices such as the Raspberry Pi.

As an embedded software/systems engineer in our mixed team of physicists and engineers, you will:

  • maintain, extend and debug the embedded firmware and software on these devices, including low-level hardware drivers, communication APIs for control and monitoring, and specialised libraries for numerical/scientific calculations,
  • create and/or maintain the software and firmware repositories to a high level, using modern software engineering practices such as unit testing, CT/CI etc,
  • help shape the architecture of the broader experimental control system, foresee bottlenecks and 'pain points', and prioritise work accordingly,
  • assist, advise and educate end users on the system and its capabilities, since you will grow in time to be the person with the most general system-wide overview. This will include maintaining documentation, examples and training materials.

The embedded software running on our devices is primarily C/C++, and other languages such as Python and Rust may be used more in the future. Our FPGA firmware is mostly written in Verilog targeted at Xilinx FPGAs and SoCs, including the Zynq family and its successors. Our FPGA workflow mostly relies on open-source and Xilinx software: Xilinx Vivado/Vitis, Verilator, Icarus Verilog and Migen.

This position offers early-career candidates a path to embed themselves in the rapidly emerging field of quantum technology, combining interesting software and firwmare architecture and design with the latest physics, and provides exposure to a wide range of challenges and learning opportunities in a fast-moving research setting. The position will be jointly affiliated with the PSI QC hub and the TIQI group, and your contributions will be important to both teams.


Your profile

Trapped-ion quantum computing is a fast-changing, diverse field, and we are looking for people with a wide range of skills, knowledge and interests. You are a person who enjoys an environment where your contributions and tasks are largely self-directed, and continuous on-the-job independent learning will be essential. You will be working in a team mostly with backgrounds in physics, and your engineering knowhow will play a critical role as your ion trapping experience grows: you enjoy advising and educating colleagues, helping define and supervise interdisciplinary projects with an engineering component, and guiding the experimental control-related decision making and planning.

You are fluent with modern embedded C/C++ and have worked on team-based collaborative embedded projects involving FPGAs or ASICs. Familiarity with Python is also desirable, since we use it in many ways including scripting, data analysis and GUIs. Experience in FPGA projects is important, since you will help with maintaining our existing FPGA designs and coordinating the efforts of FPGA engineers on new projects. You are familiar with industry-standard software engineering practices including version control, unit testing, build automation/CI etc.

The most useful experience for this role is in distributed embedded systems, in particular the development and maintenance of rack-mount cards or similar devices for high-energy physics, data centres, test and measurement applications etc, however more diverse experience with embedded hardware and software in scientific and technical fields is also valuable. Previous experience with physics research, especially quantum information science, atomic physics, spectroscopy, laser physics or related topics, is highly valuable. Experience with and/or interest in some of the following is also desirable: SCADA/experimental automation, UNIX/Linux development and system administration, low-noise analog/RF electronics, PCB design, desktop GUI design, web frontend and/or backend design. The control infrastructure in the ion-trapping lab is a mixture of the M-ACTION system developed at ETH Zurich and the open-source ARTIQ system - prior knowledge of these control systems will be helpful but not necessary. You may wish to read about them to get a feeling for the kind of systems you will be working with.

You have at least a masters-level qualification in electrical engineering, computer science, physics or a closely-related field, or an undergraduate qualification with several years' experience. You have excellent English communication skills; German knowledge is favorable but not required. Recent ETH/EPFL graduates with a keen interest in the topics discussed are also encouraged to apply.


ETH Zurich

ETH Zurich is one of the world’s leading universities specialising in science and technology. We are renowned for our excellent education, cutting-edge fundamental research and direct transfer of new knowledge into society. Over 30,000 people from more than 120 countries find our university to be a place that promotes independent thinking and an environment that inspires excellence. Located in the heart of Europe, yet forging connections all over the world, we work together to develop solutions for the global challenges of today and tomorrow.

Working, teaching and research at ETH Zurich
View or Apply

Similar Positions