Embedded Software Engineer

Noyes Robotics GmbH
München, Germany
2 days ago

Role details

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

Job location

München, Germany

Tech stack

ARM
C++
Communications Protocols
Computer Engineering
Linux
Embedded Software
FreeRTOS
Python
Software Engineering
Systems Architecture
Universal Asynchronous Receiver/Transmitter
PIC Microcontroller
GIT
Information Technology
Software Version Control

Job description

  • Du entwirfst, entwickelst, testest und wartest Embedded-Software für Robotiksysteme auf Mikrocontrollern in modernem C++ (ARM Cortex-M, ESP32). Der Einsatz von Rust auf der ESP32-Plattform ist geplant.
  • Du integrierst die Software in neue Hardwaredesigns.
  • Du entwirfst, implementierst und optimierst Regelungs- und Steuerungsalgorithmen.
  • Du entwickelst Software-Infrastruktur, um unsere Roboter im Feld zu betreiben (z. B. für OTA-Software-Updates oder Telemetrie, in Rust auf Linux).
  • Du arbeitest eng mit Ingenieur:innen anderer Fachrichtungen an Systemarchitektur und Integration zusammen., Du arbeitest eng mit einem interdisziplinären Team von Ingenieur:innen zusammen, um vollständige Robotikprodukte von der Idee bis zur Umsetzung zu realisieren. Deine Ideen und deine technische Expertise prägen direkt das Design und die Performance unserer Roboter, sodass du einen spürbaren Einfluss auf das Endprodukt hast.

Dies ist eine praxisnahe Rolle für Ingenieur:innen, die gerne nah an der Hardware arbeiten und erleben möchten, wie ihre Software reale Systeme direkt steuert.

Requirements

  • Du hast einen Bachelor- oder Masterabschluss in Robotik, Technischer Informatik, Informatik, Elektrotechnik oder einem verwandten Fachgebiet.
  • Du hast nachweisbare Erfahrung mit modernem C++ (C++11 oder neuer).
  • Du hast Erfahrung in der Entwicklung von Software für Mikrocontroller, idealerweise STM32 oder andere ARM-Cortex-M-Systeme.
  • Du wendest Software-Engineering-Methoden und Best Practices in der Embedded-Softwareentwicklung an, um wartbare und testbare Software zu schreiben.
  • Du hast Erfahrung mit Versionskontrollsystemen, vorzugsweise Git.
  • Du bist mit einem oder mehreren Kommunikationsprotokollen vertraut (I2C, SPI, UART, CAN usw.).
  • Du hast ein grundlegendes Verständnis von Regelungssystemen (z. B. PID-Regler).
  • Du hast Grundkenntnisse in Elektronik und kannst Schaltpläne lesen.
  • Du verfügst über sehr gute Englischkenntnisse in Wort und Schrift; Deutschkenntnisse sind von Vorteil.

Nice to have:

  • Du hast Kenntnisse in der Programmiersprache Rust.
  • Du hast ein Verständnis für Regelungstheorie und praktische Erfahrung in der Implementierung von FOC-Regelungen für bürstenlose Motoren.
  • Du hast Erfahrung mit Zustandsschätzverfahren (z. B. Kalman-Filter) und digitaler Signalverarbeitung.
  • Du hast grundlegende Python-Kenntnisse.
  • Du hast Erfahrung mit FreeRTOS.

Apply for this position