Skip to main content

Senior C++ Software Engineer (m/f/d)

Germany, Munich (HQ)
Full-time
Permanent employee

About the role

Agile Robots SE is transforming advanced robotics research into reliable industrial solutions. Our Robot Group develops the full software stack for our robotic systems, from low-level system integration, real-time communication, Linux-based platform services, and hardware abstraction layers up to developer tooling and user-facing interfaces. 

We are looking for a Senior C++ Software Engineer to join our Platform Team. In this role, you will work on the core software infrastructure that enables our robots to run reliably, safely, and efficiently in production environments. You will contribute not only as an experienced developer, but also as a technical owner who improves architecture, code quality, maintainability, and engineering practices across the team. 

Your Responsibilities

  • Design, implement, and maintain robust C++ software components for robotics platform infrastructure
  • Work on Linux-based system software, runtime services, communication layers, configuration handling, logging, diagnostics, and developer tooling
  • Build reliable interfaces between robot applications, backend services, operating system components, containers, and hardware-facing services
  • Contribute to real-time and near-real-time data processing pipelines, considering latency, determinism, resource usage, and failure behavior
  • Improve system reliability through better error handling, observability, logging, monitoring, recovery mechanisms, and testing
  • Review and improve software architecture with a focus on maintainability, scalability, modularity, and clear ownership
  • Write high-quality, testable C++ code using modern C++ practices
  • Define and improve APIs used by other internal teams and components
  • Support integration with real robotic hardware and investigate complex issues across software, OS, network, and hardware boundaries
  • Mentor other engineers through code reviews, design discussions, pair programming, and technical guidance
  • Collaborate closely with firmware, control, backend, DevOps, QA, and application teams
  • Help define technical standards, development workflows, and long-term platform direction

Essential Skills

  • 7+ years of professional software engineering experience, with strong hands-on C++ development
  • Strong experience with modern C++, ideally C++17 or C++20
  • Solid understanding of Linux system programming, including processes, threads, IPC, sockets, signals, scheduling, file systems, and debugging
  • Experience designing maintainable software architectures using principles such as SOLID, clear ownership, separation of concerns, and testability
  • Strong debugging skills using tools such as GDB, Valgrind, sanitizers, perf,strace,ltrace,tcpdump, or similar
  • Experience with multi-threaded and concurrent programming
  • Good understanding of networking fundamentals, such as TCP/IP, UDP, sockets, latency, buffering, and packet flow
  • Experience writing automated tests, including unit tests, integration tests, and hardware-related test strategies
  • Strong Git experience, including code reviews, merge requests, branching workflows, and CI-based development 
  • Ability to analyze complex production or integration issues across multiple components
  • Fluency in English, both written and spoken
  • A senior mindset: ownership, technical judgment, clear communication, and willingness to improve not only code but also the surrounding engineering process

Beneficial Skills

  • Experience with robotics, industrial automation, embedded systems, or machine control software 
  • Experience with industrial communication protocols, such as EtherCAT, CAN, Modbus, OPC UA, Profinet, or similar
  • Knowledge of real-time Linux, kernel scheduling, IRQ handling, or kernel/user-space boundaries
  • Experience with IPC mechanisms such as message queues, shared memory, Unix domain sockets, or similar
  • Experience with firmware update mechanisms, boot processes, OS images, or system update flows
  • Experience with containerized environments
  • Experience with package management and build systems such asConan, CMake, and Debian packaging 
  • Experience with Python for tooling, automation, testing, or code generation
  • Experience designing internal frameworks, SDKs, APIs, or reusable platform libraries 
  • Experience debugging issues on real hardware across software, OS, network, and hardware boundaries 
  • Experience mentoring engineers or leading technical topics

What we offer

  • A dynamic high-tech startup, combined with financial soundness and world-class investors
  • Challenging tasks and projects
  • Great working environment in an interdisciplinary, international team
  • Room for creativity and personal development

About us

Agile Robots SE is an international high-tech company based in Munich, Germany with a production site in Kaufbeuren and more than 2300 employees worldwide. Our mission is to bridge the gap between artificial intelligence and robotics by developing systems that combine state-of-the-art force-moment-sensing and world-leading image-processing technology. This unique combination of technologies allows us to provide user-friendly and affordable robotic solutions that enable intelligent precision assembly. 

This is made possible by our employees, who bring out the best in each and every day with creativity and enthusiasm. Become part of this team and shape the future of robotics with us!

We are proud of our diversity and welcome your application regardless of gender and sexual identity, nationality, ethnicity, religion, age, or disability.