Software Developer* - VS2017 Build Toolchain Migration

Sedenius Engineering GmbH
Stuttgart, Germany
3 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English, German
Compensation
€ 208K

Job location

Remote
Stuttgart, Germany

Tech stack

Microsoft Windows
Test Suite
Automation of Tests
C++
CMake
Compilers
GNU Linker
Integrated Development Environments
Python
Microsoft Visual Studio
MSBuild
Powershell
Toolchain
Management of Software Versions
Software Distribution
Gitlab-ci
Jenkins

Job description

  • Planung und Durchführung des gesamten Migrationsprojekts:
  • Upgrade der Build-Toolchain auf Visual Studio 2017 (MSVC v141 / VS2017 Toolset) für alle betroffenen Projekte und Repositorys
  • Analyse und Anpassung von Build-Skripten (CMake, MSBuild, Ninja) und CMake-Generatoren (z. B. Visual Studio 15 2017) an die Anforderungen der VS2017-Toolchain
  • Anpassung der CI-Pipelines (Jenkins, GitLab CI) einschliesslich der Aktualisierung und Bereitstellung von Windows-Build-Agenten und -Runner
  • Sicherstellung der Pipeline-Stabilität nach der Migration
  • Analyse und Behebung von Compiler- und Linker-Fehlern, Warnungen und Inkompatibilitäten, die durch den Wechsel der Toolchain entstehen; Ermittlung der Ursachen und Implementierung nachhaltiger Lösungen
  • Neukompilierung und Validierung von Bibliotheken von Drittanbietern (z. B. Boost) unter der neuen Toolchain; Sicherstellung vollständiger ABI- und CRT-Kompatibilität zur Vermeidung von Laufzeitproblemen
  • Aktualisierung von SDK- und Laufzeitabhängigkeiten (Windows SDK, UCRT); Verwaltung der Toolset-Versionierung und Sicherstellung einer konsistenten Abhängigkeitsauflösung über alle Entwicklungsumgebungen hinweg
  • Erstellung von Rollout- und Rollback-Plänen, Staging-Builds und Release-Prüfungen zur Minimierung von Ausfallzeiten und Risiken; Definition klarer Umstellungskriterien und Fallback-Verfahren
  • Integration und Ausführung automatisierter Tests (Boost.Test); Validierung von Release-Artefakten, Durchführung von Release-Prüfungen und Koordination von Signaturprozessen für Build-Ergebnisse
  • Umfassende Dokumentation alleränderungen; Erstellen von Migrationsleitfäden und technische Runbooks; Durchführung von Wissensvermittlungssitzungen und Schulung des Entwicklerteams in der neuen Toolchain
  • Kontinuierliche überwachung der Build-Stabilität; Optimierung der Parallelität der Builds und Reduzierung der Gesamt-Build-Zeiten
  • Festlegen der KPIs und Warnmeldungen für den Zustand der Builds nach der Migration

Requirements

  • Mehrjährige praktische Erfahrung mit Visual Studio (insbesondere VS2017) und der MSVC v141-Toolchain - fundierte praktische Kenntnisse des Toolset, nicht nur theoretische
  • Sicherer, produktionsreifer Umgang mit CMake und MSBuild; solides Verständnis von Build-Generatoren und CMake-Konfigurationsmustern für Windows-Builds mit mehreren Zielen
  • Praktische Erfahrung mit Jenkins und/oder GitLab CI; Fähigkeit, Windows-Build-Agenten und Pipeline-Runner in beiden Systemen zu konfigurieren, zu aktualisieren und bereitzustellen
  • Fundierte C++-Kenntnisse mit Schwerpunkt auf der Analyse von Build-Fehlern, dem Verhalten des Linkers und ABI/CRT-Anfälligkeiten; Fähigkeit, komplexe Probleme bei der Cross-Kompilierung und der Laufzeitkompatibilität zu diagnostizieren und zu beheben
  • Nachweisbare Erfahrung bei der Durchführung von Compiler-/Toolchain-Migrationen (z. B. VS2015 * VS2017 oder gleichwertig); nachgewiesene Fähigkeit, mit Inkompatibilitäten, veralteten Funktionen und Kaskadeneffekten bei mehreren Bibliotheken umzugehen
  • Gute Skriptkenntnisse in Batch, PowerShell und Python zur Automatisierung von Workflows für Installation, Bereitstellung, Umgebungseinrichtung und
  • Testausführung
  • Analytische, selbstständige Arbeitsweise; Erfahrung in der Planung und Umsetzung von Roll-out- und Fallback-Strategien für produktionskritische Infrastrukturänderungen
  • Idealerweise Erfahrung mit dem Ninja-Build-System als CMake-Generator; Kenntnisse der parallelen Build-Mechanismen von Ninja für grosse C++-Codebasen und Erfahrung mit automatisierten Tests unter Verwendung von Boost.Test oder vergleichbaren C++-Test-Frameworks; Fähigkeit, Testsuiten während des Migrationsprozesses zu pflegen und zu erweitern
  • Verhandlungssichere Deutsch- und Englischkenntnisse

Benefits & conditions

  • Bruttojahresgehalt all-in:85-100 000 Euro
  • Home Office: nach dem Onboarding bis zu 60%
  • Wöchentliche Arbeitszeit: 40 Stunden

About the company

Wir sind ein Spezialist für intelligente und umfassende Lösungen im Bereich des autonomen Fahrens sowie autonomer Transportsysteme. Herstellern, Lieferanten und Dienstleistern der Automobil- und Logistikbranche sowie öffentlicher Verkehrssysteme bieten wir ein umfangreiches Leistungsportfolio für die Mobilität und smarte Logistik von morgen.

Apply for this position