The RoleWe are hiring a robotics software engineer to improve how our autonomous robots execute motion and coordinate work across planning, robot control, end effectors, sensors, and material-handling equipment. You will develop production software that connects high-level autonomy decisions to reliable physical execution, with a focus on reducing cycle time, eliminating unnecessary delays, and improving recovery from real-world failures.
This role is well suited for an engineer who enjoys working across software and hardware boundaries, diagnosing system-level problems, and turning performance data into practical improvements on deployed robots.
Responsibilities- Develop and improve software for robot trajectory execution, task sequencing, and hardware coordination
- Profile robot cycles and reduce delays across motion planning, trajectory execution, end-effector operation, sensing, and conveyor interaction
- Build and maintain reusable, validated robot motions for common operating scenarios and integrate them with online planning
- Extend behavior trees or state machines for autonomous task execution, event-driven coordination, fault handling, and recovery
- Integrate motion-planning outputs with industrial robot controllers, hardware interfaces, and safety constraints
- Diagnose production issues using logs, telemetry, simulation, and testing on physical robots
- Add instrumentation, automated tests, regression tests, and hardware validation for execution and autonomy software
- Collaborate with perception, motion planning, controls, hardware, test, and deployment engineers on cross-system improvements
- Participate in design reviews and contribute to system architecture and technical planning
Qualifications- B.S. or M.S. in Robotics, Computer Science, Electrical Engineering, Mechanical Engineering, or a related field, or equivalent industry experience
- 3+ years of professional experience developing software for deployed robotic or automation systems
- Proficiency in modern C++ and Python in a production environment
- Experience developing with ROS or ROS 2 on Linux
- Hands-on experience integrating software with physical robots, actuators, sensors, or industrial automation equipment
- Working knowledge of robot kinematics, motion planning, trajectory execution, and controller interfaces
- Experience with behavior trees, state machines, or similar task-orchestration frameworks
- Strong debugging skills across software, communications, controls, and hardware interfaces
- Ability to design, test, and deliver reliable software across subsystem boundaries
Preferred Qualifications- Experience with industrial manipulators such as KUKA, ABB, FANUC, Universal Robots, or similar platforms
- Experience with MoveIt, Pilz, OMPL, Ruckig, ros2_control, or comparable robotics frameworks
- Experience profiling and improving robot cycle time, throughput, latency, or trajectory execution
- Familiarity with robot communication and industrial protocols such as EtherCAT, CAN, PROFINET, EtherNet/IP, or OPC UA
- Experience with behavior-tree design, event-driven automation, or production recovery logic
- Experience building simulation, hardware-in-the-loop, or automated regression-testing systems
- Familiarity with Docker-based deployment and cloud-based logging or monitoring
- Prior work in warehouse automation, manufacturing, logistics, material handling, or robotic pick-and-place applications