Python Softwareingenieur (BE-CSS-IDE-2026-114-LD)
Role details
Job location
Tech stack
Job description
- Entwickle Python-Bindungen zum Beschleuniger-Kontrollsystem.
- Baue wiederverwendbare Komponenten für Steueranwendungen.
- Gestalte PyQt-basierte Anwendungen zur Systemüberwachung., Als Python Softwareingenieur mit starkem Interesse sowohl an der API-Entwicklung als auch an der Desktop-Anwendungsentwicklung (mit PyQt6) arbeiten Sie an Werkzeugen im Herzen des CERN-Beschleunigerkomplexes, die täglich in Betrieb, Technik und Physik eingesetzt werden.
Diese Rolle umfasst die Python-APIs, die mit dem CERN-Steuerungssystem interagieren, sowie die darauf aufbauenden PyQt6-basierten Desktop-Anwendungen.
Auf der API-Seite entwickeln Sie Frameworks, Bibliotheken und Bindings, die eng mit Backend-Diensten des Steuerungssystems integriert sind, mit starkem Fokus auf Entwicklererfahrung, Robustheit und langfristige Wartbarkeit.
Auf der UI-Seite arbeiten Sie an Anwendungen zur Bedienung, Überwachung und Konfiguration von Beschleunigersystemen und sorgen für zuverlässige, reaktionsschnelle und effektive Benutzererfahrungen.
Sie arbeiten mit Kolleginnen und Kollegen aus der gesamten Organisation zusammen, tragen zu Design-Reviews, Dokumentation, Schulungen und technischem Support bei, bleiben über relevante neue Technologien informiert und gestalten aktiv die Zukunft des CERN-Beschleunigersteuerungssystems mit., * Entwurf und Pflege von Python-Bindings für das Beschleunigersteuerungssystem unter Verwendung verschiedener Technologien wie REST, gRPC, ereignisgesteuerte Nachrichtenübermittlung (z. B. ZMQ) sowie Bindings zu bestehenden C++- und Java-Bibliotheken.
- Erstellung wiederverwendbarer Komponenten, Widgets und Bibliotheken zur Unterstützung der Entwicklung von Steuerungsanwendungen bei CERN.
- Entwicklung und Pflege mehrerer PyQt-basierter Steuerungsanwendungen, die im CERN Control Centre eingesetzt werden.
- Mitwirkung bei der Auswahl und Konfiguration einer kohärenten DevOps-Toolchain für Python, die Abhängigkeitsmanagement, Packaging, Testing, CI/CD und Deployment-Monitoring abdeckt.
- Zusammenarbeit mit Nutzergruppen zur Etablierung und Dokumentation von Best Practices für die Entwicklung Python-basierter Steuerungsanwendungen.
- Beitrag relevanter Entwicklungen zur Open-Source-Community.
- Verantwortung für ein oder mehrere Schlüsselsysteme oder Werkzeuge übernehmen und deren Weiterentwicklung durch aktive Einbindung der Stakeholder und strukturierte Nachverfolgung vorantreiben.
- Mentoring von Junior-Ingenieuren, Wissensaustausch und Unterstützung ihres Wachstums bei der Mitarbeit in den genannten Bereichen., * Kenntnisse von Programmiertechniken und -sprachen.
- Entwurf von Datenbanken/Repositories.
- Architektur und Design von IKT-Systemen.
- Identifikation und Auswahl relevanter neuer IKT-Technologien.
- Konzeption, Gestaltung und Entwicklung von Nutzererfahrungen und Schnittstellen.
Requirements
- Masterabschluss oder gleichwertige Erfahrung in Informatik.
- Umfangreiche Kenntnisse in Python und API-Design.
- Erfahrung in UI-Design mit Fokus auf Benutzerfreundlichkeit., Masterabschluss oder gleichwertige relevante Erfahrung im Bereich Informatik oder einem verwandten Fachgebiet.
Erfahrung:
- Umfangreiche Erfahrung mit Python, inklusive typisiertem Python und asynchronen Programmiermustern.
- Fortgeschrittene Kenntnisse im API- und Anwendungsdesign mit nachweislicher Erfahrung in der Gestaltung und Weiterentwicklung clientorientierter APIs und SDKs.
- Solides Verständnis von Plattform-Engineering-Prinzipien und modernen Software-Engineering-Praktiken, einschließlich Qualitätssicherung und DevOps.
- Kenntnisse in Qt und dessen Python-Bindings (PyQt oder PySide) sind von Vorteil; Lernbereitschaft wird ebenso geschätzt.
- Erfahrung im UI-Design mit starkem Fokus auf Benutzerfreundlichkeit und Entwicklererfahrung ist wünschenswert.
- Komfortables Arbeiten in einem breiten und sich entwickelnden Technologiefeld mit Neugier und Initiative zur Entwicklung neuer Expertise entsprechend der Anforderungen der Rolle., * Ergebnisorientierung: Lieferung qualitativ hochwertiger Arbeit termingerecht und Erfüllung der Erwartungen.
- Problemlösung: pragmatischer Ansatz; Verständnis für den Wert generischer statt "goldbeschichteter" technischer Lösungen.
- Teamarbeit: Beitrag zur Förderung einer positiven Atmosphäre im Team durch optimistische und konstruktive Haltung; Umgang mit Problemen.
- Verantwortungsbewusstsein: gewissenhaftes und zuverlässiges Arbeiten; Einhalten von Zusagen.
- Flexibilität: schnelle und einfallsreiche Anpassung an wechselnde Prioritäten und Anforderungen.
Sprachkenntnisse:
- Englisch in Wort und Schrift, mit der Bereitschaft, Französisch zu lernen.
Benefits & conditions
Vertragsart: Befristeter Vertrag (5 Jahre). Unter bestimmten Bedingungen können Inhaber befristeter Verträge eine unbefristete Stelle beantragen.
Arbeitszeit: 40 Stunden pro Woche
Arbeitsflexibilität: Hybrid
Jobgrade: 6-7
Referenznummer der Stelle: BE-CSS-IDE-2026-114-LD
Arbeitsbereich: Software Engineering und IT
Benchmark-Stellenbezeichnung: Computing Engineer
Globale Vorteile
- Ein wettbewerbsfähiges Gehalt (steuerfrei), das mit Ihren relevanten Berufsjahren steigt.
- 30 Tage bezahlter Urlaub pro Jahr plus 2 Wochen Jahresabschluss.
- Absicherung durch das umfassende Krankenversicherungssystem von CERN (für Sie, Ihren Ehepartner und Ihre Kinder) sowie Mitgliedschaft im CERN-Pensionsfonds.
- Familien-, Kinder- und Säuglingszulagen, abhängig von Ihren individuellen Umständen.
- Ein Umzugspaket (Installationszuschuss, Umzug, Reisekosten), abhängig von Ihren individuellen Umständen.
- Möglichkeit, Ihren Vertrag auf bis zu 8 Jahre zu verlängern + Anspruch auf unbefristete Anstellung.