You write the firmware that makes cognitive robots tick — at 1 kHz and beyond.
NEURA's robots run dense, safety-relevant, real-time workloads across a distributed network of microcontrollers and SoCs. Your firmware keeps the system deterministic, observable, and ready for the AI stack above it. You'll work across the embedded stack — from bare-metal drivers and BSP (Board support package) bring-up to RTOS application layers, communication middleware, and OTA infrastructure — collaborating closely with electronics, systems, and AI/software engineers.
BSP & driver development: Develop, port, and maintain board support packages and low-level peripheral drivers (GPIO, SPI, I²C, UART, CAN-FD, EtherCAT, USB) for ARM Cortex-M and Cortex-A targets; support hardware bring-up from first power-on.
RTOS application layer: Architect and implement FreeRTOS (or equivalent) task structures, inter-task communication, priority management, and resource allocation for safety-critical real-time applications.
Sensor & actuator integration: Integrate IMUs, encoders, tactile sensors, ToF sensors, force/torque sensors, and BLDC motor controllers into the firmware stack; implement filtering, calibration routines, and data timestamping.
Communication middleware: Implement and maintain embedded communication stacks — CAN-FD network management, micro-ROS / DDS-XRCE bridge, EtherCAT slave stack — ensuring reliable, low-latency data exchange with the main robot controller.
Safety & monitoring: Implement hardware watchdogs, software safety monitors, safe-state machines, and power-loss handling; contribute to functional safety analysis (FMEA, safety requirements allocation).
OTA & configuration management: Design and maintain firmware update mechanisms (OTA, JTAG/SWD flashing), boot sequence management, non-volatile configuration storage, and firmware versioning aligned with the PLM system.
Testing and CI: Write unit and integration tests for firmware modules; support HIL (hardware-in-the-loop) test setups; integrate automated firmware testing into CI/CD pipelines.
Documentation and code quality: Maintain clear, peer-reviewed code with proper documentation; participate in firmware architecture reviews and contribute to shared coding standards across the embedded team.
Deep embedded expertise with a system-level mindset.
You are an embedded engineer who thinks in terms of determinism, latency, and resource constraints — and who is equally comfortable writing a CAN driver as reviewing a schematic with the hardware team. You understand that firmware quality is invisible when it's good and catastrophic when it's not.
Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Embedded Systems, or a related field.
3+ years of professional embedded firmware development experience in a real-time, resource-constrained environment (robotics, industrial automation, medtech, automotive, or similar).
Expert-level C/C++ for microcontrollers; strong understanding of memory models, volatile/atomic operations, stack management, and linker scripts.
Solid hands-on experience with ThreadX or a comparable RTOS — task creation, synchronization primitives, interrupt handling, and timing analysis.
Experience with ARM Cortex-M series (M0/M3/M4/M7/M33) and ideally also Cortex-A targets running embedded Linux or Zephyr.
Practical experience with key peripheral interfaces: EtherCAT, SPI, I²C, UART, USB CDC/HID, CAN-FD, or similar; ability to debug protocol issues with logic analyzers and oscilloscopes.
Familiarity with micro-ROS or ROS 2 integration (fastDDS) is a significant advantage.
Experience with firmware CI/CD, unit testing frameworks (Unity, Ceedling, GoogleTest for embedded), and version control (Git).
Ability to read hardware schematics and collaborate effectively with electronics and mechanical engineers at the HW/SW boundary.
Good English; German is a practical advantage for day-to-day collaboration.