Kodiak Robotics

Software Engineer, Controls

Job Description

Posted on: 
February 27, 2023

We are looking for an experienced Controls Software Engineer who is passionate about safety-critical systems to join our Motion Planning & Controls team.


  • Be responsible for designing and implementing our feedback, control, and actuation strategies using both established & novel techniques
  • Architect, develop, and test reliable, redundant, and safety-critical software that controls fully-loaded trucks driving on the road
  • Characterize the vehicle platform (e.g., steering, braking, throttle/engine management, dynamics) to develop models that can be used for precise motion planning, simulation, and controls
  • Work on fundamental problems in redundant actuation, degraded operation, and fail-safe control
  • Collaborate with other teams at Kodiak (e.g. hardware, motion planning, and systems engineering) to deliver a robust vehicle control architecture (for example: requirement specifications, test plans, test documentation, and implemented testing at all levels of integration)

Job Requirements

  • A strong background in robotics, controls, optimization, and mathematics (MS, PhD, or equivalent experience)
  • Developed, tested, and tuned controllers for mobile autonomous robots, ideally trucks, cars, or flying vehicles
  • Performed system identification, modeling, simulation, or other characterization for systems with complex dynamics
  • A strong theoretical foundation paired with practical experience in controls, system modeling, and/or redundant architectures
  • A focus on end-to-end vehicle safety
  • Software development experience writing production-level C or C++

Bonus points if you have:

  • Experience with software design and implementation in safety-critical domains (e.g. automotive, aerospace, medical, etc)
  • Written low-level drivers for software/hardware interfacing using protocols such as CAN or ethernet
  • Written efficient code running on resource-constrained embedded systems with a real-time operating system
  • Experience with formal verification methods, writing requirements, and systems engineering processes
  • Comfortable with Python, Matlab/Simulink, or other simulation/analysis tools used in feedback system design

Apply now

More job openings