CERN

Nuclear Research

PythonSoftwareEngineer

Geneva, Switzerland CONTRACT
Market Sentiment
HIGH DEMAND

Neural analysis suggests this role is
optimal for not-applicable candidates.

The Brief

“Python Software Engineer at CERN. Skills: Python, API development, PyQt6, DevOps. Design Python bindings. Maintain Python bindings”

What You'll Achieve.

delivering high quality work on time; fulfilling expectations

Industry & Context.

Nuclear Research
Problems you'll solve

Solving Problems; adopting a pragmatic understanding

What They're Looking For.

Must Have

Master's Degree or equivalent relevant experience in Computer Science or related field, Extensive experience with Python, typed Python, asynchronous programming patterns, Advanced knowledge of API and application design, proven experience designing and evolving client-oriented APIs and SDKs, Solid grasp of platform engineering principles, modern software engineering practices, quality assurance, DevOps, Knowledge of Qt and its Python bindings (PyQt or PySide), Knowledge of programming techniques and languages, Design of databases/repositories, Architecture and design of ICT systems, Identification and selection of relevant emerging ICT technologies, Conceptualising, designing and developing user experiences and interfaces, Achieving Results, Solving Problems, Working in Teams, Demonstrating Accountability, Demonstrating Flexibility, Spoken and written English

Nice to Have

UI design with a focus on usability and developer experience, Curiosity and initiative to develop new expertise as the role demands, Commitment to learn French

What You'll Do.

Design Python bindings

Maintain Python bindings

Build reusable components

Develop PyQt-based control applications

Contribute to DevOps toolchain selection

Collaborate with user communities

Contribute developments to open source

Take ownership of key systems

Mentor junior engineers

How You'll Work.

Team & Collaboration

Collaborate with colleagues across the organisation; Contributing to design reviews; Contributing to documentation; Contributing to training; Contributing to technical support; Working in Teams; Contributing to promoting a positive atmosphere

Communication Scope

Spoken and written English; documentation

Process & Methodology

Take ownership of one or more key systems or tools, driving their evolution, structured follow-through

Full Job Description

At [CERN](http://home.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. Introduction: As a Python Software Engineer with a strong interest in both API development and desktop application engineering (with PyQt6), you will work on tools at the heart of CERN's accelerator complex, used daily across operations, engineering, and physics. This role spans the Python APIs that interface to the CERN control system, and the PyQt6-based desktop applications built on top of them. On the API side, you will develop frameworks, libraries, and bindings integrating tightly with backend control system services, with a strong emphasis on developer experience, robustness, and long-term maintenance. On the UI side, you will work on applications for operating, monitoring, and configuring accelerator systems, ensuring reliable, responsive, and effective user experiences. You will collaborate with colleagues across the organisation, contributing to design reviews, documentation, training, and technical support, while staying abreast of relevant emerging technologies and playing an active part in shaping the future of CERN's accelerator control system. Functions: * Design and maintain Python bindings to the accelerator control system, using a range of technologies such as REST, gRPC, event-driven messaging (e.g. ZMQ), as well as bindings to existing C++ and Java libraries. * Build reusable components, widgets, and libraries supporting control application development at CERN. * Develop and maintain a number of PyQt-based control applications used in the CERN Control Centre. * Contribute t

Free ATS check

Applying for this Python Software Engineer role?

Most applicants get filtered before a human reads their resume. See if yours makes the cut.

How to Apply on SmartRecruiters

  • SmartRecruiters often includes a video screening step — check camera and mic permissions.
  • Link your GitHub or portfolio directly in the profile section for technical roles.
  • Applications may be reviewed by AI scoring before reaching a recruiter — use keywords from the job description.

ANONYMOUS · UNFILTERED

What do employees actually say about CERN?

Real rants from real employees. Read before you apply.

Read Company Rants →