BS, MS or higher in Computer Science, Robotics, Engineering, or equivalent experience
Minimum 3 years of industry experience
Proficient in Python and C++
Experience interfacing software with hardware like motors and sensors
Skilled in building automated tests and technician-facing tools
Comfortable debugging hardware and software, including reading schematics
Familiarity with Linux and ROS/ROS2, with camera calibration experience as a plus
Responsibilities
Build automated manufacturing tests to ensure each robot is fully functional before leaving the line
Transform engineering scripts into guided workflows for technicians
Create one-click service tests for technicians to verify repairs
Develop startup self-checks for hardware and software verification at boot
Define pass/fail criteria in collaboration with subsystem teams
Root-cause test failures and drive fixes with relevant teams
Track failure modes and provide feedback for design and process improvements
Benefits
Collaborative work environment with cross-functional teams
Hands-on role at the intersection of hardware, firmware, and software
Opportunity to drive meaningful improvements in product quality
Engagement with cutting-edge robotics technology
Impact on the reliability and trustworthiness of robotic systems
Full Job Description
Position Overview
We are seeking a Software Engineer to own the software that provisions, calibrates, and tests our robots, from the manufacturing line through service and repair. Your goal: every robot that leaves the line or comes back from repair works as a complete system, and technicians can verify it without engineering help. You will own escalations from manufacturing and service: you triage, dig in, fix what's yours, and drive cross-team resolution when it's not. Your work means engineers and researchers can trust the robots they use, so model evaluations reflect the model, not a faulty robot.
This is a hands-on role at the point where hardware, firmware, and software come together. Alongside building test software, you will turn recurring failures into lasting product and process improvements. You will work closely with manufacturing, hardware, firmware, perception, and robotics teams, as well as the technicians who build and repair our robots. Responsibilities
Build automated manufacturing tests that verify each robot is fully functional before it leaves the line, with results tracked for each robot.
Turn engineering scripts for provisioning, flashing, and calibration, such as camera calibration, into guided workflows technicians can run.
Build one-click service tests that let technicians verify a robot is fully repaired before handing it back.
Build startup self-checks that verify each robot's hardware, software versions, and configuration every time it boots.
Define pass/fail criteria with the hardware, perception, and controls teams that own each subsystem.
Root-cause test failures across hardware, firmware, and software, and drive fixes with the owning teams.
Track failure modes and repeat issues, and feed learnings back into design, assembly, and test processes.
Preferred Qualifications
BS, MS or higher degree in Computer Science, Robotics, Engineering or a related field, or equivalent practical experience.
Minimum of 3 years of industry experience.
Proficiency in Python and C++.
Experience writing software that interfaces with real hardware, such as motors, sensors, and embedded devices.
Experience building automated tests, manufacturing test stations, or technician-facing test tools.
Comfort debugging across hardware and software, including reading schematics and working with communication buses like CAN or EtherCAT.
Experience with Linux and ROS/ROS2 or similar robotics middleware.
Familiarity with camera calibration or sensor bring-up is a plus.