Full description
<h4><span style="color: #2e74b5;">About the role</span></h4>
<p style="color: !important;"><span style="color: #000000;">At Agile Robots, we build powerful software frameworks to orchestrate complex robotic systems and solve challenging tasks. The solutions are sold to various international customers to enable them to control their robotic work cells. Smooth integration and scalable deployment are key goals. </span></p>
<p style="color: !important;"><span style="color: #000000;">AgileCore is meant to be a scalable platform that supports multiple projects in parallel. That only works if the platform underneath scales with it - if it stays fast, thread-safe, and diagnosable as projects, devices, and operating conditions multiply.</span></p>
<p style="color: !important;"><span style="color: #000000;">We are looking for a Senior C++ Performance Engineer to join our AgileCore Runtime core team. This is a T-shaped role in a small senior team: you are a full member of the core team first - contributing to the Runtime, reviewing contributions from the teams that build on our platform, and sharing our support and release duties - and within the team, you own the performance and stability practice as your specialization.</span></p>
<p style="color: !important;"><span style="color: #000000;">On the specialization side, you will drive the performance of the Runtime core - the Blackboard, the Behavior Engine and the execution paths beneath them - make the system provably thread-safe under load, and make failures in the field fast to diagnose. You own the practice: the methodology, the tooling, the benchmarks, the audits and the education. You work hand in hand with the platform architect, who owns the performance budgets and hot-path interface contracts at the architecture level - you turn those budgets into measured, enforced reality and shape them with your findings. You set the standard for performance, concurrency and troubleshooting, and raise the team's ability to meet it without slowing feature development down. This is a shipping role, not a research role: success is measured in merged improvements, closed field escalations and green regression gates - not in microbenchmark leaderboards. We optimize to the budget the product needs, not to zero.</span></p>
<h4><span style="color: #000000;">Why this role</span></h4>
<ul>
<li><span style="color: #000000;">Greenfield performance infrastructure: the benchmark suites, budgets and CI regression gates are yours to build, not inherit</span></li>
<li><span style="color: #000000;">A measurable, physical problem: your profiling and your benchmarks run against real robots on our hardware-in-the-loop rigs - where third-party plugins meet 1 kHz vendor control loops</span></li>
<li><span style="color: #000000;">A small senior core team with real ownership: your work becomes the standard the whole platform builds on</span></li>
</ul>
<h4><span style="color: #000000;">Your Responsibilities:</span></h4>
<ul>
<li><span style="color: #000000;">Own the latency, throughput, and jitter of the Runtime core components - the Blackboard (our typed, subscribable in-process data plane) and the Behavior Engine (skill execution tree, trigger handling) - and carry improvements end to end: from flame graph to merged change to a regression gate that keeps it fixed</span></li>
<li><span style="color: #000000;">Build the real-time basis for the platform: scheduling policies and priorities, CPU affinity, allocation, and page-fault discipline on hot paths, and lock-free structures where they pay for themselves</span></li>
<li><span style="color: #000000;">Be a full member of the Runtime core team: develop core components, review contributions from feature teams building on the platform, and take part in the team's support and release rotations</span></li>
<li><span style="color: #000000;">Make performance measurable and enforced - benchmark suites, per-subsystem budgets, and regression gates in CI instead of surprises at a customer site</span></li>
<li><span style="color: #000000;">Be the hands-on authority on thread safety: ownership models, lock hierarchies, memory-order reasoning, and eliminating whole classes of races through sanitizers, stress and soak testing</span></li>
<li><span style="color: #000000;">Ensure the product holds across the complete operational domain it is used in - every supported device, load profile, and deployment topology, not only the configurations that appear in a demo</span></li>
<li><span style="color: #000000;">Improve debuggability so that factory deployment and support scale: tracing, structured logging, runtime metrics, crash and core-dump handling, symbols for stripped release binaries</span></li>
<li><span style="color: #000000;">Carry performance and stability into the Plugin SDK and its C ABI, where third-party plugins meet vendor control loops running at 1 kHz </span></li>
<li><span style="color: #000000;">Investigate complex issues across software, OS, network, and hardware boundaries - including the hardest escalations from the field</span></li>
<li><span style="color: #000000;">Partner with the platform architect on performance-critical design: propose and implement improvements within the platform's performance budgets and hot-path interface contracts, and feed measurements back into how those budgets are set</span></li>
<li><span style="color: #000000;">Mentor engineers in performance, concurrency, and troubleshooting through code reviews, deep-dive sessions, design discussions and technical guidance - without producing overhead</span></li>
</ul>
<h4><span style="color: #000000;">Essential Skills:</span></h4>
<ul>
<li><span style="color: #000000;">7+ years of professional software engineering experience, with strong hands-on C++ development </span></li>
<li><span style="color: #000000;">Based in Munich or open to relocate - we support relocation and visa sponsorship</span></li>
<li><span style="color: #000000;">Strong written and verbal communication skills in English </span></li>
<li><span style="color: #000000;">Strong experience with modern C++, ideally C++17 or C++20, including templates and compile-time design</span></li>
<li><span style="color: #000000;">Proven performance engineering: profiling before optimizing, reading flame graphs and hardware counters, and reasoning about tail latency and jitter rather than averages</span></li>
<li><span style="color: #000000;">A track record of shipped performance work: improvements you carried from measurement through merged code to sustained enforcement in CI - not benchmarks in isolation</span></li>
<li><span style="color: #000000;">Strong experience with multi-threaded and concurrent programming: memory models, atomics, lock-free patterns, and the judgment to know when a plain mutex is the right answer</span></li>
<li><span style="color: #000000;">Exposure to real-time or near-real-time systems on Linux is strongly preferred: scheduling policies, preemption, priority inversion, CPU affinity, and the usual sources of jitter - deep prior RT experience is a plus, not a gate; the performance fundamentals matter more</span></li>
<li><span style="color: #000000;">Strong debugging skills using GDB, sanitizers (ASan/TSan/UBSan), Valgrind, perf, strace, ltrace, tcpdump, and core dumps</span></li>
<li><span style="color: #000000;">Solid understanding of Linux internals: processes, threads, IPC, signals, scheduling, memory management, buffering, and dynamic linking</span></li>
<li><span style="color: #000000;">Experience with CMake and compiler toolchains (GCC, Clang)</span></li>
<li><span style="color: #000000;">Experience writing automated tests, including unit tests, integration tests, and hardware-related test strategies, as well as benchmarks and stress/soak tests</span></li>
<li><span style="color: #000000;">A pragmatic, team-first senior mindset: you optimize the things that matter to the product and stop when the budget is met; you share reviews, support, and release duties in a small senior team; you make your specialty a capability of the whole team rather than a silo - and you would rather ship a 30% win this week than discuss a 3% win for a month</span></li>
</ul>
<p style="color: !important;"> </p>
<h4><span style="color: #000000;">Beneficial Skills:</span></h4>
<ul>
<li><span style="color: #000000;">Database internals: storage and index structures, concurrency control, MVCC, transaction and cache design - our Blackboard is essentially an in-process typed store</span></li>
<li><span style="color: #000000;">Contributions to high-performance or systems software: allocators, runtimes, engines, databases, network stacks, kernels</span></li>
<li><span style="color: #000000;">A low-latency background: trading systems, real-time audio or video, telecom, or embedded motion control</span></li>
<li><span style="color: #000000;">Extensive template metaprogramming and compile-time computation </span></li>
<li><span style="color: #000000;">Knowledge of real-time Linux, kernel scheduling, IRQ handling, kernel/user-space boundaries, and latency measurement with cyclictest, ftrace or eBPF</span></li>
<li><span style="color: #000000;">C++ ABI and plugin / shared-library API design that stays stable across compilers and toolchain versions</span></li>
<li><span style="color: #000000;">Hands-on experience with instrumentation profilers such as Tracy (we use it), as well as perf, VTune, or similar</span></li>
<li><span style="color: #000000;">Windows internals and the MSVC toolchain - parts of the platform also ship on Windows</span></li>
<li><span style="color: #000000;">Networking fundamentals: TCP/IP, UDP, sockets, latency, buffering, and packet flow</span></li>
<li><span style="color: #000000;">Experience designing maintainable architectures - clear ownership, separation of concerns, testability - in systems constrained by time, not only by features</span></li>
</ul><div class="content-conclusion"><h3 class="TranslationField-module__fieldItemName___Q0F_7 TranslationField-module__aboutUsWrapper___WXJpq"><strong>What we offer</strong></h3>
<ul>
<li>
<div>A dynamic high-tech company, combined with financial soundness and world-class investors.</div>
</li>
<li>
<div>Join an interdisciplinary, international team with 60+ different nationalities in a collaborative work environment.</div>
</li>
<li>
<div>Lots of development opportunities as we continue to grow.</div>
</li>
<li>
<div>Challenging tasks and impactful projects alongside experts that enable professional and personal growth.</div>
</li>
<li>
<div>Corporate Benefits Program covering health, mobility, and learning for 100€ net per month.</div>
</li>
<li>
<div>Modern office facilities with a rooftop terrace overlooking Munich, free drinks & fruits, and regular company events contribute to a good working environment</div>
</li>
</ul>
<h3><strong>About us</strong></h3>
<div class="TranslationField-module__fieldItemValue___c0djd">
<p><strong>Agile Robots SE</strong> is an international high-tech company based in Munich, Germany with a production site in Kaufbeuren and more than <strong>3500</strong> 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. </p>
<p>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!</p>
<p>We are proud of our diversity and welcome your application regardless of gender and sexual identity, nationality, ethnicity, religion, age, or disability.</p>
</div></div>
Find more English Speaking Jobs in Germany on Arbeitnow