Du entwickelst die Firmware, die unsere kognitiven Roboter antreibt — mit 1 kHz und darüber hinaus.
Die Roboter von NEURA Robotics verarbeiten hochdichte, sicherheitskritische Echtzeit-Workloads über ein verteiltes Netzwerk aus Mikrocontrollern und SoCs.
Deine Firmware sorgt dafür, dass das System deterministisch, beobachtbar und bereit für den darüberliegenden AI-Stack bleibt.
Du arbeitest über den gesamten Embedded-Stack hinweg — von Bare-Metal-Treibern und BSP-Bring-up bis zu RTOS-Applikationen, Kommunikations-Middleware und OTA-Infrastruktur — und arbeitest eng mit Teams aus Elektronik, Systems Engineering und AI/Software zusammen.
Deine Aufgaben
Entwickle, portiere und pflege Board Support Packages (BSPs) sowie Low-Level-Treiber für ARM-Cortex-M- und Cortex-A-Plattformen (GPIO, SPI, I²C, UART, CAN-FD, EtherCAT, USB) und unterstütze das Hardware-Bring-up ab dem ersten Power-on.
Architekturiere und implementiere RTOS-Applikationsschichten mit FreeRTOS (oder vergleichbar): Task-Strukturen, Inter-Task-Kommunikation, Prioritätsmanagement und Ressourcenverwaltung für sicherheitskritische Echtzeitanwendungen.
Integriere Sensoren und Aktuatoren wie IMUs, Encoder, taktile Sensoren, ToF-Sensoren, Kraft-/Drehmomentsensoren und BLDC-Motorcontroller in den Firmware-Stack; implementiere Filterung, Kalibrierung und präzises Timestamping.
Entwickle und pflege Kommunikations-Middleware — darunter CAN-FD-Netzwerkmanagement, micro-ROS / DDS-XRCE-Bridge und EtherCAT-Slave-Stacks — für zuverlässige Kommunikation mit niedriger Latenz zum zentralen Robotcontroller.
Implementiere Safety- und Monitoring-Funktionen wie Hardware-Watchdogs, Software-Sicherheitsmechanismen, Safe-State-Machines und Power-Loss-Handling; unterstütze Functional-Safety-Analysen (FMEA, Safety-Requirements-Allokation).
Entwickle Mechanismen für OTA-Updates und Konfigurationsmanagement, inklusive Boot-Management, nichtflüchtigem Speicher und Firmware-Versionierung im Zusammenspiel mit dem PLM-System.
Schreibe Unit- und Integrationstests für Firmware-Module, unterstütze HIL-Testaufbauten und integriere automatisierte Firmware-Tests in CI/CD-Pipelines.
Pflege sauberen, dokumentierten und reviewbaren Code; beteilige dich an Architektur-Reviews und entwickle gemeinsame Coding-Standards im Embedded-Team weiter.
Was du mitbringst
Du bist ein Embedded Engineer mit Systemverständnis.
Du denkst in Determinismus, Latenzen und Ressourcenlimits — und fühlst dich sowohl beim Schreiben eines CAN-Treibers als auch beim Review eines Schaltplans mit dem Hardware-Team wohl.
Du weißt: Gute Firmware fällt nicht auf. Schlechte schon.
Bachelor oder Master in Elektrotechnik, Computer Engineering, Embedded Systems oder einem vergleichbaren Bereich.
3+ Jahre Erfahrung in professioneller Embedded-Firmware-Entwicklung in Echtzeit- und ressourcenbeschränkten Systemen (Robotik, Industrieautomation, MedTech, Automotive o. Ä.).
Exzellente Kenntnisse in C/C++ für Mikrocontroller, inklusive Memory Models, volatile/atomic Operations, Stack-Management und Linker-Skripten.
Praktische Erfahrung mit ThreadX oder vergleichbaren RTOS-Systemen — Task-Erstellung, Synchronisation, Interrupt-Handling und Timing-Analysen.
Erfahrung mit ARM Cortex-M (M0/M3/M4/M7/M33) und idealerweise auch Cortex-A-Plattformen mit Embedded Linux oder Zephyr.
Erfahrung mit relevanten Schnittstellen und Protokollen wie EtherCAT, SPI, I²C, UART, USB CDC/HID oder CAN-FD sowie Debugging mit Logikanalysatoren und Oszilloskopen.
Erfahrung mit Firmware-CI/CD, Unit-Test-Frameworks (Unity, Ceedling, GoogleTest Embedded) und Git.
Fähigkeit, Hardware-Schaltpläne zu lesen und effektiv mit Elektronik- und Mechanikteams an der HW/SW-Schnittstelle zusammenzuarbeiten.
Erfahrung mit micro-ROS oder ROS 2 Integration (FastDDS) ist ein großer Pluspunkt.
Gute Englischkenntnisse; Deutsch ist im täglichen Austausch von Vorteil.