Staff C++ Architecture Engineer
Designs and implements scalable C++ software architectures for ROS/ROS 2-based robotic systems, integrates sensors/actuators, and owns end-to-end components for industrial automation. Requires 8+ years in modern C++ and robotics experience.
About the job
Role & Responsibilities
- Design and implement high-quality C++ (and some Python tooling) for ROS/ROS 2 nodes, libraries, and utilities (rcl-cpp, actions/services, components, lifecycle, launch).
- Integrate and support sensors and actuators (cameras, LiDAR, robot controllers); develop and maintain device drivers, message interfaces, health checks, and diagnostics.
- Architect scalable, testable subsystems (configuration, state machines, fault recovery, observability) using robust design patterns.
- Diagnose and resolve performance and scalability challenges.
- Own components, features, or systems with end-to-end responsibility.
- Develop reusable software components for interfacing with back-end platforms.
- Partner with cross-functional teams (product, design, operations, infrastructure) to create innovative application experiences.
- Continuously improve code quality, efficiency, and performance.
- Conduct reviews, write clear documentation, and advocate best practices for safety, reliability, and maintainability.
Minimum Qualifications
- Bachelor’s degree in Computer Science, Robotics or equivalent practical experience.
- 8+ years of industry experience in developing and shipping production software in modern C++ (14/17/20).
- Proven track record of owning and delivering components, features, or systems.
- Familiarity with large-scale system design and architecture best practices.
- Experience with concurrency and real-time programming.
- Strong analytical, problem-solving, and decision-making skills.
- Excellent communication and cross-team collaboration skills.
- Ability to thrive in a fast-paced environment with shifting priorities.
Preferred Qualifications
- Master’s or PhD in Computer Science or Robotics.
- 3+ years of hands-on experience with ROS or ROS 2 (nodes, messages, actions/services, launch, packaging).
- Strong skills in debugging and troubleshooting real robots/embedded systems (logs, tracing, sanitizers, core dumps).
- Expertise in object-oriented design and API development; familiarity with SOLID principles and clean architecture.
- Proficiency with Linux, CMake/colcon, Git, and common CI tools (e.g., GitHub Actions, GitLab CI).
- Solid foundation in algorithms and data structures.
- Recognized as a technical mentor or thought leader.
Compensation & Benefits
- Base salary range, bonus or commission, and equity.
- Comprehensive benefits: medical, dental, vision, unlimited PTO, 401(k) + employer match, regular offsite events, discretionary fund.
Skills
C++, ROS, Ros 2, Python, Linux, Cmake, Colcon, Git, GitHub Actions, Gitlab Ci, Rcl-Cpp, Concurrency, Real-Time Programming
Similar jobs
Embedded Engineering jobsLeads firmware architecture and a technical team developing real-time embedded control systems for smart hardware. The role requires 7+ years of firmware experience, strong C/C++ and Python skills, circuit-level debugging expertise, and technical leadership.
Research and develop guidance, navigation, and control algorithms for high-performance aircraft, including vehicle dynamics modeling and control-system optimization. The role requires a relevant engineering degree, 7+ years of related experience, production C++, MATLAB, Simulink, and eligibility for a SECRET clearance.
Leads requirements, architecture, integration, performance characterization, and validation for autonomous-vehicle platform systems. Requires systems engineering experience, expertise in robotics and HIL or on-road testing, plus C++, Python, and MATLAB proficiency.
Develop embedded firmware and software architectures for UAV avionics, integrating RTOS platforms, sensors, autonomy systems, and hardware-in-the-loop testing. The role requires staff-level embedded development expertise in C/C++, bare-metal systems, Linux or RTOS bring-up, and a STEM degree.
Develop and integrate embedded Linux software for cellular and wireless connectivity in autonomous vehicles, including modem vendor integration, protocol-stack debugging, telemetry, and performance optimization. Requires 10+ years of embedded wireless experience and strong C/C++ and Linux skills.