Senior CI/CD Engineer - Gitlab & Robot Software Pipelines (Human)
Deine Mission & Herausforderungen
Als Senior CI/CD Engineer stellst du sicher, dass jedes Team bei NEURA vom Code-Commit bis zu einem getesteten, signierten und releasefähigen Build gelangen kann – unabhängig davon, ob es sich um einen Cloud-Service, ein KI-Modell oder die Software unserer Roboter handelt.
Du entwickelst wiederverwendbare Pipeline-Komponenten und arbeitest eng mit den Teams zusammen, um ihre CI/CD-Pipelines optimal aufzusetzen.
CI/CD-Katalog aufbauen: Du konzipierst, entwickelst und pflegst wiederverwendbare GitLab-CI/CD-Komponenten und Templates für Build-, Test-, Scan-, Packaging- und Release-Prozesse. So können Teams auf standardisierte Lösungen zurückgreifen, statt YAML-Konfigurationen immer wieder zu kopieren.
Pipelines für Robotersoftware optimieren: Du entwickelst schnelle und reproduzierbare Pipelines für C++- und ROS-2-Codebasen – von CMake, Conan und Compiler-Caching bis hin zur Cross-Kompilierung für ARM- und Embedded-Zielplattformen.
Packaging und Releases automatisieren: Du automatisierst die Erstellung von Debian-Paketen, Multi-Architektur-Docker-Images und die semantische Versionierung bis hin zur Koordination von Releases für unsere Robotikprodukte.
Tests gezielt integrieren: Du integrierst Unit-Tests, Integrationstests und Hardware-in-the-Loop-Tests auf realen Robotern sowie in Simulationsumgebungen direkt in die CI/CD-Pipelines.
GitLab-Runner-Infrastruktur betreiben: Du betreibst und skalierst unsere GitLab Runner auf Kubernetes und AWS. Dabei berücksichtigst du x86- und arm64-Architekturen, GPU-Ressourcen, intelligentes Caching und eine kostenbewusste Ressourcennutzung.
Software-Lieferkette absichern: Du integrierst Schwachstellenscans, die Erstellung von Software Bills of Materials (SBOMs), die Signierung von Artefakten und den sicheren Cloud-Zugriff ohne statische Zugangsdaten in unsere Standard-Pipelines.
Entwicklungsteams befähigen: Du unterstützt unsere Robotik-, KI- und Cloud-Teams als Berater und Sparringspartner, überprüfst ihre Pipelines, entwickelst gemeinsam mit ihnen Verbesserungen und hilfst ihnen dabei, Entwicklung und Betrieb eigenverantwortlich zu übernehmen.
Build und Deployment verbinden: Du sorgst für die nahtlose Übergabe von Artefakten an Registries und Plattformen wie JFrog Artifactory, Harbor und EKS sowie an unsere Over-the-Air-Bereitstellung über Neuraverse und GitOps-basierte Deployments.
Darauf können wir uns freuen
Fundierte Berufserfahrung: Du bringst mindestens fünf Jahre Erfahrung im Bereich CI/CD, DevOps oder Build- und Release-Engineering mit – idealerweise in einem Embedded-, Robotik- oder Automotive-Umfeld.
Umfassende GitLab-Kenntnisse: Du verfügst über tiefgehende praktische Erfahrung mit GitLab CI/CD, insbesondere mit Komponenten und Katalogen, Parent-Child- und Multi-Project-Pipelines, Rules sowie der Administration von GitLab Runnern.
Know-how in nativen Build-Systemen: Du hast fundierte Erfahrung mit C++-Build-Systemen wie CMake, Conan oder vergleichbaren Technologien sowie mit Linux-Packaging. Kenntnisse in ROS oder ROS 2 sind ein großer Pluspunkt.
Container und Kubernetes: Du kennst dich mit Docker, insbesondere Multi-Stage- und Multi-Architektur-Builds, sowie Kubernetes aus. Erfahrung mit AWS ist von Vorteil.
Scripting und Automatisierung: Du verfügst über sehr gute Bash-Kenntnisse und Erfahrung mit Infrastructure as Code (IaC), beispielsweise mit Terraform. Dein Grundsatz lautet: Automatisiere alles, was sinnvoll automatisiert werden kann!
Sicherheitsbewusstsein: Du bist mit der Sicherheit von Software-Lieferketten, Artefaktmanagement und OIDC-basierter Authentifizierung vertraut.
Enablement-Mentalität: Du hast Freude daran, andere Engineers dabei zu unterstützen, ihre Entwicklungs- und Betriebsprozesse selbstständig zu verbessern, anstatt diese Aufgaben dauerhaft für sie zu übernehmen.
Kommunikationsstärke: Du kannst technische Entscheidungen und Zielkonflikte verständlich erklären und kommunizierst souverän mit Engineers aus den Bereichen Robotik, KI und Cloud. Professionelle Englischkenntnisse sind erforderlich; Deutschkenntnisse sind von Vorteil.