Robot Client SDK Engineer (Mensch)

Neura Robotics GmbH
München, Germany
yesterday

Role details

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

Job location

München, Germany

Tech stack

Java
API
C++
Client Server Models
Sync (Unix)
Python
Maven
Prometheus
Data Streaming
Management of Software Versions
Data Logging
Doxygen
Backend
Sphinx
Laptops
GraphQL
Api Design
gRPC

Job description

  • protoc + buf Toolchain für Client-seitige Code-Generierung; CI-Pipelines generieren Clients bei jeder Proto-Änderung neu
  • Python Client SDK: idiomatische Wrapper mit Context Managern, Async/Await-Varianten, IDE-Autocomplete-Stubs, pip Wheels fürs interne PyPI
  • C++ Client SDK: RAII Channel Lifecycle, Async, sprachtypische Exception-Hierarchie, Conan/vcpkg Packages
  • Java Client SDK: Builder-Patterns für Requests, CompletableFuture, Maven Central Artifacts
  • Channel Lifecycle Handling über alle Sprachen hinweg: Timeouts, Deadline-Propagation, Reconnect-Logik, TLS/mTLS Konfiguration
  • Mapping von gRPC Status auf sprachtypische Exceptions: hierarchische Exception-Typen mit semantisch sinnvollen Subklassen
  • Client/Server Version-Skew Compatibility Tables - definierte Policies zur Versionskompatibilität, automatische Kompatibilitätstests
  • Semantic Versioning abgestimmt mit dem Platform Architect, Durchsetzung von Deprecation-Policies via Linter-Warnings, Migration Guides
  • Simulation-Mode im Client: gleiche Proto-Schnittstelle, aber Simulation-Backend für Offline-Entwicklung
  • Observability Hooks pro Sprache: strukturiertes Logging, OpenTelemetry Tracing Context, Prometheus Metrics
  • Referenz-Beispiel-Apps pro Sprache mit Best Practices: Pick-and-Place, Mode Switching, Fault Recovery, Telemetrie-Streaming
  • Automatisch generierte Doku pro Sprache: Sphinx (Python), Doxygen (C++), Javadoc (Java); Beispiele immer synchron zur API
  • Onboarding für interne Nutzer: Skill Bundles, Evaluierungs-Frameworks, R&D Notebooks, Demo-Apps - alles basierend auf deinen Templates
  • RFC-Co-Review mit dem Robot Platform Integration Engineer bei jeder Proto-Änderung

Requirements

  • Erfahrung mit Developer Experience für Plattform-SDKs - hat Client-Libraries für interne oder externe Nutzer gebaut und ausgeliefert
  • Fit in mindestens zwei der folgenden: modernes Python (Typing, asyncio, pyproject/wheels), modernes C++ (17/20, Async, Build-Systeme), Java (CompletableFuture, Maven)
  • Hands-on im gRPC-Ökosystem: protoc, buf, grpc-python, grpc-java, grpc-cpp - Erfahrung mit produktiven Clients
  • Multi-Language Packaging: manylinux Wheels, Conan/vcpkg, Maven Central - inkl. kompletter CI-Pipelines
  • API-Design Verständnis: gRPC/REST/GraphQL, Semantic Versioning, Deprecation-Strategien, Backwards-Compatibility
  • Erfahrung mit Doku-Tools: Sphinx, Doxygen, MkDocs - End-to-End Ownership der Dokumentation
  • Verständnis von Async-Patterns über Sprachen hinweg: Sync vs Async vs Streaming gRPC und deren Unterschiede in der Nutzung

Nice to have

  • Verständnis von Robotik oder Industrial Control, um über Latenz- und Timing-Themen mit Platform Engineers zu sprechen
  • Erfahrung mit Language Bindings für native Libraries (PyBind11, JNI, SWIG, cppyy)
  • OpenTelemetry Instrumentation Libraries in mehreren Sprachen umgesetzt
  • Grundverständnis von ROS 2 Client Libraries (rclpy / rclcpp)
  • Developer-Portals, API-Docs oder SDK-Tutorials für externe Entwickler erstellt

Benefits & conditions

Im Software Department gestaltest du Robotik-Lösungen, die die Zusammenarbeit von Mensch und Maschine neu definieren. Du arbeitest mit modernster Technologie und setzt Standards, die die Branche verändern. Dabei entwickelst du nicht nur unsere Lösungen mit, sondern setzt neue Trends und treibst Innovationen voran. In einem agilen und interdisziplinären Team arbeitest du an spannenden Projekten. Mit klaren Scrum-Prozessen wie Daily Stand-ups, Sprint-Planungen und Reviews bleibst du flexibel und effizient. Die enge Zusammenarbeit mit anderen Fachbereichen ermöglicht es dir, Softwarelösungen zu entwickeln, die nicht nur technisch, sondern auch praktisch überzeugen. Hier findest du eine Umgebung, in der Kreativität und technologische Exzellenz Hand in Hand gehen. Wenn du Ideen Realität werden lassen möchtest und Spaß daran hast, Technologien auf ein neues Level zu bringen, wartet im Software Development Team bei NEURA genau die richtige Herausforderung auf dich. Vollzeit

About the company

Unser Office in München liegt im Stadtteil Obersendling, einer lebendigen Gegend, die modernes Arbeiten und eine hohe Lebensqualität perfekt verbindet. Hier bist du mitten in der bayrischen Metropole, die für ihre wirtschaftliche Stärke, kulturelle Vielfalt und ihr einzigartiges Flair bekannt ist. Obersendling bietet eine entspannte Atmosphäre mit charmanten Cafés, grünen Parks und einer hervorragenden Anbindung - sowohl an die Innenstadt als auch an das bayerische Umland. Du bist schnell im Zentrum Münchens, mit all seinen Highlights: dem Marienplatz, weltberühmten Museen, Theatern und einem pulsierenden Nachtleben. Das Münchner Office ist der ideale Standort für bestimmte Teams und Projekte, die besonders von der Nähe zu unseren Partnern und der internationalen Vernetzung profitieren. Es bietet ein modernes, dynamisches Arbeitsumfeld in kleinerer, persönlicher Atmosphäre und ist eng mit unseren anderen Standorten vernetzt.

Apply for this position