We’re building the brains and infrastructure behind autonomous flight. From simulation environments to real-world integration, we bridge the gap between algorithms and the hardware that carries them.
This role focuses on implementing and integrating autonomy components that run in simulation and on real aircraft, working closely with more senior engineers and domain specialists.
What you’ll work on
As an Robotics Software Engineer, you’ll work on implementing, integrating, and testing autonomy behaviors across simulation and flight. You’ll collaborate closely with senior engineers, GNC specialists, and CV engineers to turn algorithms into working autonomous systems.
You won’t be expected to define the overall architecture—but you will be expected to understand it, work within it, and help improve it.
Your responsibilities include:
Implement autonomy components on top of a vanilla ArduPilot flight control implementation, issuing guidance commands from a companion computer
Contribute to our simulation and validation pipeline, including:
Gazebo-based simulation
SITL, HITL, and real-world flight testing
CI/CD checks that validate autonomy in simulation
Help build and maintain tooling for scenario automation and regression testing
Implement autonomy behaviors such as target tracking and interception guidance
Integrate GNC, perception, and mission logic into working systems
Contribute to on-board software for navigation, communications, and health monitoring
Support system bring-up, debugging, and verification in Linux-based environments
Participate in flight trials and assist with post-flight data analysisHelp ensure simulation realism and parity with flight performance
Our Stack (Today)
We’re explicit about this so there’s no guessing:
Simulation: Gazebo
Autopilot: ArduPilot
Vehicle & comms integration: MAVSDK
On-board autonomy: Python on a companion computer
OS: Linux
No ROS
You’re not expected to have used this exact stack before—but you are expected to ramp quickly and apply solid engineering mental models to new tools.
What We’re Looking For
CORE SKILLS
Solid background in software engineering for robotics or autonomous systems
Experience implementing and debugging non-trivial systems in production or field environments
Good Python experience
Comfortable working in Linux-based environments
Practical, hands-on engineering mindset
Willingness to work across simulation, testing, and real-world systems
Clear communication and ability to collaborate with senior engineers and specialists
NICE-TO-HAVES / PLUSES
Some C++ experience or interest in moving toward C++
Embedded systems experience (e.g. Nvidia Jetson, Raspberry Pi)
Exposure to SITL or HITL setups
Familiarity with flight control concepts or autopilot firmware
Exposure to computer vision or autonomy-adjacent data workflows
A1–A3 or A2 drone license
(Not required, but supported and considered a perk of the role)
Why join us?
You’ll work on real autonomy systems that fly, in a small team where your contributions matter. This role offers hands-on exposure to simulation, flight testing, and autonomy integration, with clear room to grow toward senior-level system ownership over time.
If you enjoy practical engineering, learning by doing, and seeing your code leave the lab and take to the air, this role is for you.
The application process
Our application process consists of three short rounds, including a technical assessment that is respectful of your time. After three rounds, we hope to extend you a great offer. We aim to hire quickly to match the pace of our changing world.
Trusk Technology
Still have more questions? Email us