Senior Software Engineer – Drone Control & Simulation (Defense and Dual-Use)
- Montreal, QC, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Apply by
- Posting language
- English
- Posted
Original job description
We’re looking for a Senior Software Engineer to be the first dedicated developer behind how operators fly, train, and feel drones through haptics.
About Haply and the Mission
Haply Robotics makes haptic controllers: devices that let you feel what a machine is doing, not only see it.
We are now applying this to drones and vehicles, with defense as our first market. Armed forces and defense manufacturers are our lead customers and partners. The same technology also serves civilian uses (dual use): public safety, search and rescue, inspection and industry.
The idea is simple. Today, operators drive a drone or a vehicle with a screen and a joystick. With Haply, they also feel it: a no-go zone pushes back before they cross it, an obstacle they cannot see is felt in the hand, and the controller tells them which mode the vehicle is in. Operators learn faster, make fewer mistakes and keep their eyes on the mission.
The Role
Your mission: help Haply build this new market by building the product behind it.
The job has two pillars. Drone control: how the operator flies the drone, from direct control to assisted modes. The simulation environment: where operators train, and where the team tests and demos, before flying for real. Haptics is what makes both unique.
That product is our Drone platform: the haptic teleoperation software that connects a Haply controller to a vehicle. It sends the operator’s hand movements to the vehicle and turns what the vehicle senses into forces the operator feels. It runs both in simulation and on real vehicles with the same controls and the same feel (sim-to-real), so operators can train in simulation and then fly for real. It works with drones today and is designed for ground vehicles, boats and robotic arms too, whether the operator is remote or on board: for example, a Haply Inverse3 built into the crew station of an armored vehicle.
This is the first dedicated development role in this new initiative. You will set the technical foundations, alongside the engineer who started the Drone platform, and bring it from proof of concept to a robust, field-tested system.
You will not work alone. You will team up with a drone piloting champion who flies the tests, brings the operator’s point of view and challenges every feature in real flight. You will also work closely with the HARP teams: the Drone platform is expected to converge with HARP, Haply’s Rust-based robotics platform, so a large part of the work is shaping shared components and a common architecture with them.
You will report directly to the VP Product & Applications.
Responsibilities
- Drone control: turn operator inputs into drone commands across flight modes (from direct control to assisted modes), through autopilots (ArduPilot, PX4, Betaflight) and MAVLink or RC links.
- Simulation environment: select, integrate and maintain the simulator (ArduPilot or PX4 SITL, Gazebo, AirSim or Unreal-based) so operators can train and the team can test and demo in simulation, then fly for real with the same controls and the same feel (sim-to-real).
- Lead the Drone platform software: its architecture, its quality and its technical roadmap.
- Build the haptic features operators feel: no-go zones, obstacles, alerts, vehicle mode and behavior.
- Connect the Drone platform to new vehicles: drones first, then ground vehicles and on-board crew stations.
- Make it safe: predictable behavior when the radio link drops, GPS is lost or a sensor fails.
- Integrate the full chain: autopilot and flight control, sensors (LIDAR, GPS, optical flow and others), radio links and video feeds, and use them to drive what the operator feels.
- Test in the field with our drone piloting champion, operators and partners, and turn their feedback into improvements.
- Work closely with the HARP teams: align on architecture, share components and standards, and plan the convergence with HARP.
- Raise the engineering bar: tests, code review, documentation and CI, so knowledge is shared and the platform can scale.
- Mentor and support other developers and contractors working on the platform.
Required Qualifications
- 5+ years of software engineering in a systems language (Rust, C++ or similar).
- Working knowledge of Rust, or the ability to become productive in it quickly: our platform is written in Rust. You do not need to be a Rust expert.
- Hands-on experience with drone flight control: ArduPilot, PX4 or Betaflight, MAVLink or RC protocols, flight modes and tuning.
- Able to integrate a simulator into the platform: select a flight or vehicle simulator (ArduPilot or PX4 SITL, Gazebo, AirSim, Unreal or Unity based), connect it to the Drone platform with simulated vehicle dynamics, sensors and video, and keep it close enough to the real vehicle for training and testing.
- Experience with real-time or low-latency systems such as control loops.
- Hands-on hardware communication: serial, UDP/TCP, WebSocket, and reading protocol logs to debug devices and links.
- Strong systems integration skills: you are comfortable making several subsystems work together end to end (autopilot and flight controller, sensors such as LIDAR, GPS and optical flow, radio links, video feeds, haptic controller) and debugging across their boundaries on the bench and in the field.
- Embedded Linux experience (ARM targets such as NVIDIA Jetson or Raspberry Pi), including cross-compilation and deployment.
- Working knowledge of TypeScript and React; Tauri is a strong plus.
- A safety mindset: you design for failure modes, test them, and document the expected behavior.
- Autonomy and ownership: you can take over an existing codebase, plan before you change it, and communicate early near hardware and safety boundaries.
- Motivated to work on defense applications: you will build technology used by armed forces and work directly with military operators and defense manufacturers.
- Comfortable being the first developer on a new initiative: you lay foundations, make pragmatic trade-offs between demo deadlines and long-term quality, and work across teams.
Nice to Have
- Advanced Rust: async/tokio, concurrency, FFI, zero-allocation hot paths.
- Flight dynamics and control: PID tuning, flight modes, assisted control.
- Game engines (Unreal, Unity) for realistic simulation.
- FPV ecosystems (CRSF/ExpressLRS).
- Haptics, force feedback or teleoperation interfaces.
- Video pipelines (GStreamer) and on-device computer vision or object detection.
- Hardware-in-the-loop testing (HITL).
- Protobuf schema design, plugin architectures, structured logging and profiling.
- Ground vehicles and on-board integration: kinematics (wheeled, tracked), CAN bus, crew station hardware, or robotic arms.
- Experience in defense, public safety, aerospace or industrial programs, or working with professional operators (military, first responders, inspection crews).
- Drone pilot certification (e.g. Transport Canada basic or advanced RPAS certificate).
- Bilingual French and English.
- We do not expect anyone to tick every box: if you are a strong systems engineer passionate about drones and simulation, apply.
Tech Stack and Environment
- Core: Rust (tokio, Cargo workspaces, FFI), protobuf, JSON and TOML configuration
- Operator interface: Tauri 2, React, TypeScript
- Operator station: Embedded Linux on NVIDIA Jetson; Windows and Linux for development
- Vehicles: Drones (multirotor, FPV), ground vehicles and on-board crew stations; MAVLink, radio and vehicle protocols
- Haptics: Haply Inverse3 and companion controllers over serial
- Tooling: Git, GitLab CI, code review, mock-hardware and simulation tests
You will split your time between the Montréal office, the lab and field test sites.
Eligibility and Security Requirements
- Canadian citizenship required.
- Some projects, especially in defense, may require you to be eligible for registration under Canada’s Controlled Goods Program and to obtain a Government of Canada security clearance.
- Willingness to travel occasionally to partner sites, test ranges and industry events, mainly in Canada and the United States.
What We Offer
- A founding engineering role in Haply’s defense and dual-use program, with direct impact on product and customers.
- Real hardware and real operators: you will test what you build in the field.
- Competitive salary and Employee Stock Option Plan (ESOP).
- Three weeks of paid vacation and 12 training days per year, 6 of your choice.
- A bilingual team in downtown Montréal, with team events and weekly sports.
Interested in becoming part of our team? Learn more and apply through the link!
More about this job
Responsibilities
Lead the architecture, development, and technical roadmap of the Drone platform, including drone control, simulation, haptic feedback, and integration with vehicles, sensors, autopilots, and communication links. Test and improve the system with operators in the field, coordinate shared architecture with the HARP teams, and strengthen engineering practices through testing, documentation, code review, and mentoring.
Requirements
Requires at least five years of systems software engineering experience, working knowledge of Rust, hands-on drone flight-control experience, and the ability to integrate simulators and real-time systems. Candidates should also have hardware communication and systems integration experience, embedded Linux deployment skills, working knowledge of TypeScript and React, a safety-focused approach, and Canadian citizenship.
Skills
- Rust
- C++
- Drone Flight Control
- ArduPilot
- PX4
- Betaflight
- MAVLink
- Flight Simulation
- Real-Time Systems
- Hardware Integration
- Embedded Linux
- TypeScript
- React
- Haptic Interfaces
- Systems Integration
- Safety Engineering
Benefits
- Employee Stock Option Plan
- Three Weeks Of Paid Vacation
- 12 Training Days Per Year
- Team Events
- Weekly Sports
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
- Security & Safety
- Government & Public Sector
Keywords
- Rust
- C++
- Tokio
- Protobuf
- Tauri
- React
- TypeScript
- Embedded Linux
- NVIDIA Jetson
- MAVLink
- ArduPilot
- PX4
- Betaflight
- Gazebo
- AirSim
- Unreal Engine
- Unity
- Haptic Feedback
- Drone Control
- Flight Simulation
- Sim-To-Real
- Real-Time Systems
- Hardware-In-The-Loop Testing
- MAVLink And RC Protocols
- LIDAR
- GPS
- Optical Flow
- GStreamer
- CAN Bus
- Controlled Goods Program