Senior Robotics Software Engineer
Role Overview
We are looking for a Senior Robotics Software Engineer to develop and deliver intelligent robotic behaviours for autonomous consumer robotics products.
You will work across software, hardware, perception, and systems engineering disciplines to solve real-world robotics challenges and deliver reliable product features. This role requires strong problem-solving ability, system engineering thinking, and hands-on software development experience to design, implement, debug, and optimize robotics capabilities that perform reliably in customer environments. Experience working with ODM/JDM development partners is an advantage.
Key Responsibilities
Robotics Software Development
- Design, develop, and maintain robotics software using modern C++.
- Develop autonomous robot behaviours for navigation, obstacle avoidance, task execution, area coverage, and recovery.
- Implement solutions involving localization, planning, control, and sensor integration.
- Participate in the full software development lifecycle, including requirements analysis, design, implementation, testing, validation, and maintenance.
- Conduct code reviews and contribute to software quality, reliability, and maintainability improvements.
System Engineering & Problem Solving
- Investigate and resolve complex system-level issues involving software, hardware, sensors, and algorithms.
- Perform root-cause analysis through debugging, data analysis, testing, and validation.
- Drive reliability, robustness, and performance improvements across robotics subsystems.
- Support field issue investigations and product validation activities.
- Contribute to engineering best practices, software architecture discussions, and continuous improvement initiatives.
Robotics Behaviours & Autonomy
- Develop and enhance robot behaviours and autonomy frameworks.
- Contribute to Behaviour Trees, State Machines, or similar decision-making systems.
- Work closely with perception, controls, and product teams to improve robot performance and user experience.
- Support navigation, localization, SLAM, sensor fusion, and robot control development activities.
Cross-Functional Collaboration
- Collaborate with hardware, perception, QA, test, and product teams throughout product development.
- Support software integration, system validation, and production readiness activities.
- Participate in technical reviews, design discussions, and project planning.
- Work with ODM/JDM partners and external suppliers to support development, integration, and issue resolution.
Required Skills & Experience
Technical Skills
- Bachelor's or Master's degree in Computer Science, Robotics, Electrical Engineering, Mechatronics, or a related discipline.
- 5+ years of experience in robotics, autonomous systems, embedded software, or related software engineering domains.
- Strong programming skills in C++ and working proficiency in Python.
- Experience with:
- Linux development and debugging
- Multi-threaded and concurrent software development
- Object-oriented design and software architecture
- Software performance optimization
- Git-based development workflows
- Strong problem-solving, troubleshooting, debugging, and root-cause analysis skills.
Robotics Experience
Hands-on experience in one or more of the following areas:
- Robotics software development
- Mobile robots or autonomous systems
- Navigation and localization
- SLAM and sensor fusion
- Robot control systems
- Behaviour Trees or State Machines
- ROS / ROS2
System Engineering
- Strong system engineering mindset with the ability to analyse and solve complex cross-functional problems.
- Experience delivering software features from concept through product deployment.
- Ability to balance technical trade-offs, product requirements, performance, quality, and schedule constraints.
- Experience working with ODM/JDM partners or external development teams is preferred.
Perception AI & Communication
- Basic understanding of robotics perception fundamentals, including computer vision, OpenCV, camera/LiDAR/IMU sensors, and machine learning concepts related to perception, object detection, classification, and sensor data processing.
- Strong English reading and writing skills with the ability to understand technical specifications and collaborate effectively with global engineering teams.
- Basic spoken English for technical discussions, project reviews, and cross-functional collaboration.
Dyson is an equal opportunity employer. We know that great minds don’t think alike, and it takes all kinds of minds to make our technology so unique. We welcome applications from all backgrounds and employment decisions are made without regard to race, colour, religion, national or ethnic origin, sex, sexual orientation, gender identity or expression, age, disability, protected veteran status or other any other dimension of diversity.