C++ Software Engineer Senior/Lead
Core
Design, implement, and maintain high-quality C++ software for robotics systems, focusing on perception, control, and systems software.
Role type
Senior/Staff/Lead C++ Software Engineer (Robotics)
Builds
High-performance robotics systems operating in the real world
Domain
Robotics, Embedded Systems, Real-time Software
Deliverable
production ML models | product features | infrastructure
Required skills
Modern C++ (C++17/20), RAII, smart pointers, move semantics, templates, generic programming, concurrency primitives, thread safety, Linux development, Git, CI/CD pipeline setup, CMake, debugging, performance profiling
Preferred skills
Robotics domain knowledge, embedded systems, real-time software, ROS/ROS 2, cross-compilation, embedded Linux, Docker, Python for tooling
Technologies
C++, CMake, Git, GitLab CI, Docker, Linux, ROS, Python
Responsibilities
Design and implement C++ code for robotics systems, configure GitLab CI/CD pipelines, improve build systems and manage dependencies, write unit and integration tests, collaborate with hardware and controls engineers, conduct code reviews, mentor engineers (Senior/Staff/Lead specific duties)
Seniority
Senior (5+ years), Staff (8+ years), Lead (10+ years)