2 Software Development - Embedded in St. Gallen
Embedded Softwareentwickler (m/w/d)
Rolle
In dieser Rolle gestaltest du anspruchsvolle Embedded-Softwarelösungen in C und C++ für elektronisch hochkomplexe Baugruppen und Systeme. Du übernimmst die Verantwortung für Konzeption, Implementierung, Test und Optimierung der Software und stellst dabei deren Zuverlässigkeit und Performance sicher. Du analysierst Anforderungen, erarbeitest saubere Softwarearchitekturen und setzt moderne Entwicklungs- und Testmethoden ein. Du verantwortest die enge Abstimmung mit angrenzenden Disziplinen wie Hardwareentwicklung, Test und Industrialisierung, um reibungslose Gesamtlösungen zu ermöglichen. Durch dein Senior-Know-how prägst du Entwicklungsstandards, coachst weniger erfahrene Kolleginnen und Kollegen und treibst die kontinuierliche Verbesserung der Embedded-Softwareentwicklung voran.
Verantwortung
- Du entwickelst Embedded Software in C/C++ für anspruchsvolle Kundenprojekte in Medizintechnik und Industrie.
- In dieser Rolle gestaltest du Software-Architekturen im interdisziplinären Team und setzt sie auf verschiedenen Prozessorarchitekturen, Echtzeitbetriebssystemen und Embedded-Linux-Plattformen um.
- Du analysierst und präzisierst Kundenanforderungen und überführst sie in robuste, wartbare Softwarelösungen.
- Als Embedded Softwareentwickler Senior arbeitest du nach etablierten Methoden, erstellst normgerechte Dokumentation und berücksichtigst dabei insbesondere regulatorische Vorgaben in der Medizintechnik.
- Du stellst durch systematische Verifikation die Funktionalität, Qualität und Stabilität der Software sicher und begleitest Projekte bis zur Serienreife unter Einbezug produktionsrelevanter Anforderungen.
- In dieser Rolle unterstützt du weniger erfahrene Entwickler im Team und übernimmst perspektivisch Verantwortung in der technischen Projektleitung oder fachlichen Teamkoordination.
Qualifikationen
- Du verfügst über ein abgeschlossenes Studium als Informatikingenieur oder Elektroingenieur FH/ETH.
- Du hast mehrjährige Praxis in der Embedded-Softwareentwicklung und kennst dich in komplexen Projekten sicher aus.
- Du beherrschst C und C++ auf sehr gutem Niveau und setzt diese routiniert in Embedded-Systemen ein.
- Du arbeitest mit strukturierten Software-Design-Methoden (z. B. UML) sowie etablierten Entwicklungsprozessen und erstellst saubere technische Dokumentation.
- Du zeichnest dich durch eine analytische, strukturierte und qualitätsbewusste Arbeitsweise aus.
- Du kommunizierst sicher in Deutsch und Englisch, idealerweise ergänzt durch Erfahrungen mit Embedded Linux (z. B. Yocto).
Benefits
Senior Software Developer (C++) (m/w/d)
Verantwortung
- Du wirst in der Design- und Implementierungsphase Firmware-Lösungen für Digital-Großformatdrucker in C++ gemäß den neuesten Standards entwickeln. Dabei liegt der Fokus auf der Erstellung von Embedded Software für Embedded Realtime Linux und der Verifikation von Realtime-Aspekten.
- Zu deinen Aufgaben gehört auch die Gestaltung der vernetzten Kommunikation zwischen den einzelnen Hardware-Komponenten mittels EtherCAT und FSoE. Du wirst Problemstellungen analysieren, Anforderungen ermitteln und Konzepte erarbeiten, um eine reibungslose Kommunikation sicherzustellen.
- Deine aktive Mitarbeit an der Software-Architektur wird essentiell sein, um die Weiterentwicklung, Optimierung und Pflege der zentralen Softwarekomponenten voranzutreiben. Du wirst in der Lage sein, innovative Lösungen zu finden und die Architektur entsprechend zu gestalten, um die Leistungsfähigkeit der Firmware kontinuierlich zu verbessern.
Qualifikationen
- Du bringst ein abgeschlossenes Ingenieurstudium mit vertieften Kenntnissen in technischer Informatik mit.
- Deine fundierten Kenntnisse in der Software-Entwicklung mit modernem C++ bilden eine solide Grundlage für deine Aufgaben.
- Idealerweise verfügst du über Erfahrung mit Realtime-Anwendungen, was dir bei der Entwicklung von Embedded Realtime Linux Lösungen zugutekommen wird.
- Deine mögliche Erfahrung im Bereich EtherCAT Kommunikation wird dir helfen, die vernetzte Kommunikation zwischen den Hardware-Komponenten erfolgreich umzusetzen.
- Dein gutes maschinentechnisches Verständnis ermöglicht es dir, die Anforderungen der Hardware-Komponenten besser zu verstehen und passende Software-Lösungen zu entwickeln.
- Dies ist besonders wichtig bei der Entwicklung von komplexen Firmware-Lösungen für Großformatdrucker.
Benefits