Skip to content

Software Engineer - Motion Planning

Develops and implements algorithmic improvements for autonomous robot motion planning to enhance safe driving in complex urban environments. Requires C++ fluency, knowledge of planning techniques like A*, RRTs, PRMs, and real-time algorithm experience.

189k – 270kFoster City, CASeattle, WAEmbedded EngineeringHybrid

About the role

Responsibilities

  • Create principled algorithmic improvements to specific areas of driving behavior and implement those changes in our code base.
  • Use our extensive backend tooling to test your changes across many different driving situations at the press of a button.
  • Lead on-vehicle drive reviews to generate actionable feedback on driving performance. Use this experience to help the team learn and make improvements.
  • Attend conferences and survey literature to stay informed on the most recent developments in the fields of Robotics and Motion Planning.
  • Write and file patents for novel technologies you develop.

Qualifications

  • Master's degree in Computer Science or related field and relevant experience
  • Fluency in C++
  • Understanding of configuration spaces and a variety of planning techniques (A*, RRTs, PRMs, etc.)
  • Demonstrated ability to create real-time motion planning algorithms

Bonus Qualifications

  • Significant contributions to geometric- and/or sampling-based planning algorithms
  • Experience with autonomous robots and machine learning or data-driven development processes
  • Experience with ROS, pose estimation, SLAM, probabilistic filtering, 3D data, or CUDA

Skills

C++A*RrtPrmROSSlamCUDAMotion PlanningReal-Time AlgorithmsRobotics

Software Engineer, Robotics

As a Robotics Engineer, you will work across the full stack to design, implement, and tune core robotics software for general-purpose robots. This hands-on role involves developing real-time control software, building simulation infrastructure, and debugging physical robots.

190k – 271kSunnyvale, CAEmbedded EngineeringOn-site4+ YOEC++ROS

IC Layout Automation Software Engineer

Develop and maintain software systems for IC layout generation supporting superconducting quantum circuit design and fabrication. Requires strong Python skills, GDSII experience, and familiarity with EDA tools and lithography processes.

190k – 220kFremont, CAEmbedded EngineeringOn-siteGdsiiGdspy

Design Verification Engineer

Develop verification strategies, reusable testbenches, and coverage plans for large-scale AI chip designs. Requires 3+ years of Design Verification experience with SystemVerilog, UVM, and strong debugging skills.

190k – 230kSunnyvale, CAEmbedded EngineeringOn-site3+ YOEUvmDpi

Software Engineer - Core Sensors

Develops and maintains high-performance driver software for lidar, radar, and camera sensors critical to autonomous vehicle perception. Requires 5+ years experience, strong C++ proficiency, and device driver development expertise.

191k – 271kFoster City, CAEmbedded EngineeringHybrid5+ YOEC++Lidar

Lead Software Engineer, Advanced Pilot Assistant Software

Lead development of autonomy and embedded software for an AI-powered aviation safety platform. Own features from concept to deployment, mentor engineers, and deliver reliable systems for real-time pilot assistance.

185k – 260kSan Carlos, CAEmbedded EngineeringHybrid5+ YOEC++ROS