A growing robotics company develops autonomous robotic systems for complex, real-world industrial applications. Its engineering team focuses on reliable physical execution, system-level performance and the deployment of production-ready automation solutions.
The Role
We are hiring a Robotics Software Engineer to improve how autonomous robots execute motion and coordinate work across planning, robot control, end effectors, sensors and external 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 to 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 interaction with external equipment.
- Build and maintain reusable, validated robot motions for common operating scenarios and integrate them with online planning.
- Extend behaviour 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 behaviour 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 behaviour-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 industrial automation, manufacturing, logistics, material handling or robotic pick-and-place applications.

