Python Software Engineer

Python Software Engineer

European Organization for Nuclear Research (CERN)

June 4, 2026July 19, 2026GenevaSwitzerland
Job Description
Job Posting Organization:
CERN, the European Organization for Nuclear Research, is a leading scientific research institution established in 195
  • It is headquartered in Geneva, Switzerland, and employs over 2,500 staff members, along with thousands of scientists and engineers from around the world. CERN operates in multiple countries and is renowned for its groundbreaking work in particle physics, utilizing the world's largest and most complex scientific instruments to explore the fundamental structure of the universe. The organization is committed to fostering a diverse workforce and promoting an inclusive environment where innovation and collaboration can thrive.

Job Overview:
As a Python Software Engineer at CERN, you will play a crucial role in developing and maintaining tools that are integral to the operations of CERN's accelerator complex. This position requires a strong interest in both API development and desktop application engineering, particularly with PyQt
  • You will be responsible for creating Python APIs that interface with the CERN control system, as well as developing PyQt6-based desktop applications that enhance user experience for operating, monitoring, and configuring accelerator systems. Your work will involve collaborating with various teams across the organization, contributing to design reviews, documentation, and training, while also keeping up with emerging technologies to help shape the future of CERN's accelerator control system.

Duties and Responsibilities:
  • Design and maintain Python bindings to the accelerator control system, utilizing technologies such as REST, gRPC, and event-driven messaging (e.g., ZMQ).
  • Build reusable components, widgets, and libraries that support control application development at CERN.
  • Develop and maintain PyQt-based control applications used in the CERN Control Centre.
  • Contribute to the selection and configuration of a coherent DevOps toolchain for Python, focusing on dependency management, packaging, testing, CI/CD, and deployment monitoring.
  • Collaborate with user communities to establish and document best practices for developing Python-based control applications.
  • Contribute relevant developments back to the open-source community.
  • Take ownership of key systems or tools, driving their evolution through active engagement with stakeholders.
  • Mentor junior engineers, sharing knowledge and supporting their professional growth.

Required Qualifications:
Candidates must possess a Master's Degree or equivalent relevant experience in Computer Science or a related field. Extensive experience with Python, including typed Python and asynchronous programming patterns, is essential. Advanced knowledge of API and application design is required, along with proven experience in designing and evolving client-oriented APIs and SDKs. A solid understanding of platform engineering principles and modern software engineering practices, including quality assurance and DevOps, is necessary. Familiarity with Qt and its Python bindings (PyQt or PySide) is a plus, and a willingness to learn is equally valued. Experience in UI design with a focus on usability and developer experience is desirable.

Educational Background:
A Master's Degree in Computer Science or a related field is required for this position. Equivalent relevant experience may also be considered. Candidates should have a strong foundation in software engineering principles and practices, particularly in Python programming and application development.

Experience:
Candidates should have extensive experience with Python programming, including familiarity with typed Python and asynchronous programming patterns. Proven experience in API and application design, particularly in developing client-oriented APIs and SDKs, is essential. A solid grasp of platform engineering principles and modern software engineering practices is also required. Experience in UI design, particularly with a focus on usability and developer experience, is desirable. Candidates should be comfortable working across a broad and evolving technology landscape and demonstrate the initiative to develop new expertise as needed.

Languages:
Fluency in spoken and written English is mandatory, with a commitment to learning French being an asset. Proficiency in additional languages may be beneficial but is not required.

Additional Notes:
This position offers a limited duration contract of 5 years, with the possibility of extension up to 8 years and eligibility for an indefinite contract tenure. The working hours are set at 40 hours per week, and the job offers hybrid flexibility. The job grade is classified as 6-7, and the reference for this position is BE-CSS-IDE-2026-114-LD. The organization provides a competitive salary that is tax-free and increases with relevant experience. Employees are entitled to 30 days of paid leave per year, plus an additional 2 weeks of annual closure. CERN offers comprehensive health insurance coverage for employees and their families, along with a pension fund membership and various allowances depending on individual circumstances. A relocation package is also available.
Apply now
Similar Jobs