Skip to content

Software Engineer - Autonomy

Build and optimize production-grade, real-time C++ software running on autonomous trucks, spanning sensor integration, perception, planning execution, vehicle control, safety, and diagnostics. The role requires 2+ years of software development experience and strong Linux and modern C++ expertise.

About the job

Responsibilities

  • Design, implement, and optimize real-time onboard software modules, including perception, sensor fusion, path planning execution, vehicle control, and safety monitoring.
  • Maintain and improve the middleware layer connecting lidar, radar, cameras, and GPS/IMU sensors to autonomy algorithm consumers.
  • Own latency and throughput performance across the onboard compute stack by profiling and tuning for deterministic behavior under resource constraints.
  • Implement ASIL-relevant architecture patterns, including fault detection, isolation, and recovery mechanisms.
  • Build diagnostics, logging, and observability tooling for post-drive analysis and rapid root-cause investigations.
  • Write thorough unit, integration, and hardware-in-the-loop (HIL) tests; contribute to CI/CD pipelines for onboard compute targets.
  • Collaborate with the autonomy team to productionize research algorithms by translating prototype software into efficient C++ deployments.

Requirements

  • Bachelor's degree in Computer Science or a related field.
  • 2+ years of professional software development experience.
  • Exceptional proficiency in C++ and experience with modern C++ standards.
  • Experience working in a Linux environment.
  • Knowledge of data serialization formats such as Protobuf and JSON.

Nice-to-haves

  • Experience with robotics middleware such as ROS or DDS.
  • Background in autonomous-vehicle perception, prediction, or planning systems.
  • Familiarity with vehicle data buses such as CAN and Ethernet.
  • Experience with multithreaded and concurrent programming.
  • Experience in a startup or fast-paced environment.

Skills

C++, Linux, Protobuf, JSON, ROS, Dds, Can, Ethernet, Multithreading, Concurrent Programming, CI/CD, Hardware-In-The-Loop Testing, Sensor Fusion, Motion Planning, Vehicle Control