We are looking for an experienced Robotics Software Engineer to join our Autonomy Software team, where we are building high-performance software for our next-generation autonomous mobile robots. In this role, you will design, implement, and optimize core software components that enable safe and intelligent robotic behavior in real-world industrial environments.
This is a hands-on role for someone who writes production-grade code, understands robotics systems deeply, and enjoys working across software and hardware boundaries to deliver robust autonomy solutions.
Responsibilities
- Develop and maintain core modules for navigation, planning, control, and system integration.
- Design scalable software interfaces across autonomy, perception, and hardware abstraction layers.
- Write clean, modular, and efficient code in C++ and Python.
- Integrate real-time data from sensors and actuators into the autonomy logic.
- Profile, debug, and optimize software for real-time performance and robustness.
- Collaborate with cross-functional teams during simulation, testing, and field deployments.
- Participate in architectural reviews, code reviews, and continuous improvement of the autonomy stack.
Preferred Qualifications
- Bachelor’s or Master’s degree in Computer Science, Robotics, Electrical Engineering, or a related field.
- 3+ years of experience in robotics software development.
- Strong programming skills in C++ and Python, with sound software architecture and debugging fundamentals.
- Experience with ROS/ROS2, Linux development, and robotic middleware integration.
- Familiarity with localization, mapping, motion planning, state estimation, and control algorithms.
- Experience working with robotic simulators (e.g., Gazebo) and tools like RViz, Foxglove for visualization.
- Solid understanding of performance, safety, and real-world constraints in robotic system deployments.
- Strong problem-solving skills, attention to detail, and ability to thrive in fast-paced, cross-functional teams.