C++ Software Engineer

Agile Robots Ag
München, Germany
7 days ago
Apply on www.adzuna.de
Prepare application

Role details

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

Tech stack

Application Programming Interfaces (APIs) Automation of Tests C++ (Programming Language) CMake Code Generation Code Review Communications Protocols Concurrent Computing Software Debugging Linux DevOps Programming Tools
+26 more
File Systems EtherCAT Firmware Hardware Design Python (Programming Language) Microsoft Windows SDK Modbus Networking Basics Software Architecture Software Maintenance Memory Leaks Software Engineering System Programming TCP/IP Tcpdump Strategies of Testing Multithreading Real Time Systems Concurrency Reliability of Systems Backend Perf (Linux) Containerization Information Technology Low Latency C++14

Job description

  • Platform Development: Design, implement, and maintain C++ software components for the robot’s platform infrastructure, including Linux-based runtime services, communication layers, configuration handling, and developer tooling.
  • APIs & Interfaces: Define and improve the APIs and interfaces that connect robot applications, backend services, and hardware-facing components, working directly with the firmware, control, backend, DevOps, QA, and application teams that consume them.
  • Real-Time Processing: Contribute to real-time and near-real-time data processing pipelines, accounting for latency, determinism, resource usage, and failure behavior.
  • Hardware Integration: Support integration with real robotic hardware and investigate issues that cross software, OS, network, and hardware boundaries.
  • Reliability & Observability: Improve system reliability through better error handling, observability, monitoring, and recovery mechanisms.
  • Architecture & Standards: Contribute to software architecture decisions and technical standards. How much of this you own grows with seniority, from component-level input toward long-term platform direction.
  • Mentoring: Support other engineers through code reviews, design discussions, and technical guidance. The share of mentoring you take on scales with seniority too., * A dynamic high-tech company, combined with financial soundness and world-class investors.
  • Join an interdisciplinary, international team with 60+ different nationalities in a collaborative work environment.
  • Lots of development opportunities as we continue to grow.
  • Challenging tasks and impactful projects alongside experts that enable professional and personal growth.
  • Corporate Benefits Program covering health, mobility, and learning for 100€ net per month.
  • Modern office facilities with a rooftop terrace overlooking Munich, free drinks & fruits, and regular company events contribute to a good working environment

Requirements

  • Background: Degree in Computer Science, Software Engineering, or a related field, or an equivalent combination of training and professional experience building production C++ systems.
  • Modern C++: Professional experience writing production C++ software using modern C++ practices (C++17/C++20).
  • Systems Programming: Solid understanding of Linux system programming - processes, threads, IPC, sockets, scheduling, file systems - and networking fundamentals: TCP/IP, UDP, latency, buffering, and packet flow.
  • Debugging & Concurrency: Strong debugging skills (GDB, Valgrind, sanitizers, perf, strace, tcpdump, or similar) and experience with multi-threaded and concurrent programming.
  • Engineering Practices: Understanding of maintainable software architecture principles (SOLID, separation of concerns, testability) and experience writing automated tests, including unit, integration, and hardware-related test strategies.

Beneficial Skills

  • Robotics/Industrial Background: Experience with robotics, industrial automation, or embedded systems, including industrial communication protocols such as EtherCAT, CAN, Modbus, or Profinet.
  • Deep Systems & Deployment: Knowledge of real-time Linux and kernel internals - scheduling, IRQ handling, IPC mechanisms - and experience with firmware update flows, containerized environments, or build/package systems such as Conan or CMake.
  • Python Tooling: Experience with Python for tooling, automation, testing, or code generation.
  • Platform SDK Design: Experience designing internal frameworks, SDKs, or reusable platform libraries.
  • Mentoring: Experience mentoring engineers or leading technical discussions.

About the company

The Robotics and Mechatronics Group of Agile Robots is looking for a C++ Software Engineer (m/f/d), who will build and maintain the C++ platform infrastructure our robot runs on. You will help us ensure it runs reliably and safely once it’s out of the lab and in production., Agile Robots SE is an international high-tech company based in Munich, Germany with a production site in Kaufbeuren and more than 3500 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!

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.adzuna.de
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

1:15 min

Defining classes and building packages with pybind11

Konstantin Bespalov · World Congress 2023

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · World Congress 2025

10:40 min

Evaluating automotive software architectures and backend technologies

Georg Kühberger +1 · LIVE

4:18 min

Prioritizing communication and structural awareness over strict tool mastery

Liam Hurrel +1 · World Congress 2021

3:55 min

Demonstrating .NET installation on Debian and Azure Linux

Silvano Coriani Silvano Coriani · Europe 2026 Virtual

8:22 min

Simulating a Linux terminal and running Spring Boot

Jakov Semenski · LIVE

Videos

See all

Related articles

See all