Senior Software Engineer - Robotics
The senior robotics software engineer leads autonomy architecture, develops navigation and mission behavior, and integrates software with embedded platforms and UAV hardware. The role requires 6+ years of robotics experience, modern C++, Pixhawk integration, Linux, Docker, and SIL/HIL testing expertise.
About the job
Responsibilities
- Lead the technical design and architecture of autonomy solutions across one or more platforms, making key trade-off decisions independently.
- Mentor and provide technical guidance to junior and mid-level engineers, reviewing designs and code to maintain high engineering standards.
- Develop and adapt mission behavior, navigation, and decision-making logic for diverse defense platforms and missions.
- Design and implement modular, reusable autonomy capabilities across different vehicle types and programs.
- Integrate and deploy autonomy solutions onto embedded Linux and other hardware platforms, including sensor interfacing and data collection.
- Conduct system-level setup, testing, and validation, including software-in-the-loop (SIL) and hardware-in-the-loop (HIL) evaluations.
- Support live flight testing of autonomy software on Group 1–5 unmanned aerial vehicles (UAVs).
- Troubleshoot complex software and integration issues to ensure reliability and performance across the stack.
- Collaborate with third-party UAS vendors and cross-functional teams to deploy autonomy software on OEM and company hardware.
- Travel between company offices and customer sites as needed.
Requirements
- Bachelor’s or master’s degree in Robotics, Computer Science, or a related engineering field.
- 6+ years of hands-on experience working with robotic systems, including hardware, software, and integration.
- Experience leading technical design decisions on complex, ambiguous autonomy problems with minimal guidance.
- Experience developing autonomy behavior and decision-making logic, such as behavior trees and state machines, and/or navigation algorithms for robotic or autonomous systems.
- Experience with modern C++.
- Experience integrating robotics products with Pixhawk autopilots, including ArduPilot and/or PX4.
- Experience with communication buses and protocols, including UART/RS232/RS422/RS485, SPI/QSPI, I2C, and Ethernet.
- Experience developing in Docker and containerized deployment environments.
- Experience with Linux-based operating systems, such as RHEL and Ubuntu.
- Familiarity with real-time, edge-computing, and safety-critical systems operating in SIL, HIL, test, and operational environments.
- Excellent communication skills and a customer-oriented project delivery mindset.
- Ability to hold UK Security Clearance; current or previous clearance is preferred.
Benefits and Compensation
- The position is based in the office five days per week, with occasional remote-work flexibility.
- Opportunities to work on live autonomy testing and defense customer deployments.
Skills
C++, Robotics, Autonomy, Navigation Algorithms, Behavior Trees, State Machines, Pixhawk, Ardupilot, Px4, Docker, Linux, Embedded Linux, Ethernet, Spi, I2C
Similar jobs
Embedded Engineering jobsDevelop and deploy guidance, navigation, and control software for autonomous aerial defense systems, from quadrotors to fixed-wing UAVs. The role requires a master’s degree, 6+ years of hands-on GNC experience, C++, control systems, flight testing, and UAS platforms such as PX4 or ArduPilot.
Develops, integrates, tests, and deploys autonomy software for defense robotics and unmanned aerial vehicles. The role requires 3+ years of hands-on robotic systems experience, modern C++, navigation or behavior logic, embedded Linux, Pixhawk integration, and SIL/HIL testing.
Researches and expands vehicle telematics coverage by analyzing automotive network traffic, OEM documentation, and field logs. The role requires hands-on vehicle interfacing, reverse engineering, programming, physical debugging tools, and automotive communication standards expertise.
Staff-level engineer developing, integrating, and field-testing autonomy software across unmanned aircraft and related systems. Requires strong C++ and Python experience, robotics or aerospace systems integration, hardware troubleshooting, and flight-test support.