Bei NEURA Robotics entwickeln wir 4NE-1, einen kognitiven humanoiden Roboter, der sicher und autonom in realen Umgebungen agieren soll. Dafür suchen wir eine*n Robot Platform Engineer für unser Humanoid Team, um die Softwarebasis weiterzuentwickeln, die Hardware, Controls, Middleware und Anwendungen zu einer zuverlässigen, produktionsreifen Robotikplattform verbindet.
Diese Rolle liegt an der Schnittstelle von Robotiksoftware, Embedded Systems, verteilten Systemen, Middleware und Hardwareintegration. Du arbeitest direkt mit Engineers aus Locomotion, Whole-Body Control, Manipulation, Perception, State Estimation und Embedded Software zusammen, um sicherzustellen, dass die humanoide Plattform zuverlässig auf realer Hardware läuft.
Wir suchen einen starken C++ Software Engineer, der/die gerne nah am Roboter arbeitet, systemnahe Herausforderungen löst und robuste Softwareinfrastruktur für komplexe Robotiksysteme entwickelt.
Your mission & challengesHumanoid Platform Integration
Du entwickelst und pflegst die Software-Abstraktionsschicht, die die Hardware-Fähigkeiten von 4NE-1 mit der NEURA-Plattformsoftware verbindet.
Du integrierst Aktuatoren, Gelenke, Gliedmaßen, Hände, Sensoren, Sicherheitssysteme und Robotercontroller in eine einheitliche Softwarearchitektur.
Du erstellst und pflegst Hardware-Interfaces, die Roboterfähigkeiten für Control-, Planning- und Application-Layer verfügbar machen.
Middleware & System Integration
Du integrierst Softwarekomponenten über den gesamten humanoiden Stack hinweg, einschließlich Locomotion, Manipulation, Whole-Body Control, State Estimation, Perception, Diagnostik und Robot Operations.
Du entwirfst und pflegst Kommunikationswege zwischen Embedded Systems, Robotersoftware und höheren Anwendungsebenen.
Du arbeitest mit DDS-basierten Kommunikationssystemen und Echtzeit-Softwarepipelines.
Du unterstützt Deployment und Integration von Robotik-Middleware-Frameworks wie ROS 2, Dora, DDS-nativen Architekturen oder anderen verteilten Robotiksystemen.
Du arbeitest mit Middleware Engineers an der übergreifenden Softwareplattform-Architektur zusammen.
Robot Lifecycle & State Management
Du entwickelst und pflegst die operative State Machine des humanoiden Roboters, einschließlich:
BOOT HOMING STAND OPERATIONAL FAULT E-STOP RECOVERY
Du implementierst Transition Guards, Recovery-Prozesse, Timeout-Handling und Fault-Escalation-Mechanismen.
Du stellst ein sicheres und vorhersehbares Roboterverhalten über alle Betriebsphasen hinweg sicher.
Controller & Mode Management
Du entwickelst und pflegst Software für verschiedene Betriebsmodi des Roboters, darunter:
Du implementierst sicheres Controller Switching und Logik für Mode Transitions.
Robot Bring-Up & Hardware Integration
Du entwickelst Software für Startup-, Kalibrierungs-, Homing- und Shutdown-Prozesse.
Du integrierst Sensoren, Aktuatoren, Motorcontroller und Embedded Subsystems.
Du unterstützt Bring-up- und Inbetriebnahmeaktivitäten auf physischer Hardware.
Du analysierst und behebst Softwareprobleme in realen Umgebungen, in denen Timing, Synchronisation und Hardwareverhalten entscheidend sind.
Fault Management & Health Monitoring
Du entwickelst Watchdog- und Fault-Management-Mechanismen.
Du implementierst Fault Detection, Klassifizierung, Recovery und Eskalationslogik.
Du baust roboterweite Health-Monitoring-Systeme auf, unter anderem für:
Du stellst einen robusten und sicheren Betrieb unter erwarteten und unerwarteten Bedingungen sicher.
Robot API Development
Du entwickelst und pflegst gRPC-basierte Robot-Control-Services.
Du implementierst APIs für Operational State Management, Diagnostik, Fault Handling, Telemetrie und Robotersteuerung.
Du arbeitest gemeinsam mit Platform- und SDK-Teams an Protocol Buffer-Definitionen und der Weiterentwicklung der APIs.
Testing & Validation
Du entwickelst Integrations-Tests auf Plattformebene für das vollständige humanoide System.
Du validierst Software in Simulationsumgebungen wie MuJoCo und Isaac Sim.
Du unterstützt Continuous Integration und automatisierte Testpipelines.
Du verifizierst Funktionalitäten auf physischen 4NE-1 Robotern.
What We Are Looking For
Abgeschlossenes Bachelor- oder Masterstudium in Informatik, Robotik, Elektrotechnik, Software Engineering, Mechatronik oder einem verwandten Bereich.
Sehr gute Software-Engineering-Kenntnisse in modernem C++ (C++17 oder neuer).
Erfahrung mit Embedded Systems oder hardwarenaher Software.
Starke Linux-Entwicklungserfahrung, einschließlich:
Erfahrung in der Entwicklung von Echtzeit- oder latenzsensitiven Anwendungen.
Erfahrung mit DDS-basierten Kommunikationssystemen wie FastDDS, Cyclone DDS, RTI Connext oder vergleichbaren verteilten Kommunikationsframeworks.
Erfahrung in der Integration von Software über komplexe Systeme hinweg, die Hardware, Sensoren, Controller und verteilte Software-Services umfassen.
Praktische Erfahrung mit physischen Robotern oder Robotik-Hardwareplattformen, nicht ausschließlich mit Simulationsumgebungen.
Erfahrung im Bring-up, in der Integration, Fehlersuche oder im Deployment von Robotiksystemen auf realer Hardware.
Sehr gutes Verständnis von Softwarearchitektur, Systemintegration und Debugging in komplexen Umgebungen.
Erfahrung in der Entwicklung und Implementierung von State Machines für Betriebs- und Fault-Management-Workflows.
Vertrautheit mit gRPC und Protocol Buffers.
Erfahrung mit containerisierten Entwicklungsumgebungen wie Docker, Nix, Podman oder vergleichbaren Technologien.
Vertrautheit mit modernen Software-Engineering-Praktiken, einschließlich CI/CD-Pipelines, Dependency Management, Packaging und reproduzierbaren Build-Umgebungen.
Vertrautheit mit virtualisierten oder hypervisorbasierten Entwicklungsumgebungen, einschließlich virtueller Maschinen, KVM/QEMU, Cross-Compilation-Umgebungen oder ähnlichen Embedded-Software-Workflows.
Starke Kommunikationsfähigkeiten und die Fähigkeit, effektiv mit Software-, Controls-, Elektronik- und Mechanical-Engineering-Teams zusammenzuarbeiten.
Nice to Have
Erfahrung mit humanoiden Robotern, legged Robots, mobilen Manipulatoren oder anderen komplexen Robotiksystemen.
Erfahrung mit Robotik-Middleware- und Orchestrierungsframeworks wie:
Vertrautheit mit OROCOS RTT oder anderen harten Echtzeit-Robotikframeworks.
Erfahrung in der Integration von Software in hochfrequente Control-Systeme mit 500 Hz bis 1 kHz.
Berührungspunkte mit Locomotion, Balancing, Whole-Body Control, Manipulation oder State-Estimation-Systemen.
Kenntnisse in QoS-Tuning, verteilten Kommunikationsarchitekturen und Performance-Optimierung von Robotik-Middleware.
Erfahrung mit sicherheitskritischen Systemen, Fault-Tree Analysis (FTA), FMEA oder sicherheitsorientierter Softwareentwicklung.
Vertrautheit mit Cross-Compilation, Embedded Linux, Virtualisierung und Deployment-Pipelines für Robotikprodukte.
Beiträge zu Open-Source-Projekten in den Bereichen Robotiksoftware, Middleware, Infrastruktur oder Embedded Systems.