Senior Embedded Software Engineer (Small UAV Flight Controls)
Senior Embedded Software Engineer (Small UAV Flight Controls)
Posted 4 days ago
SENIORITY
Lead
About the role
- Control Loop Execution: Design, optimize, and implement high-rate stabilizationloops, attitude control algorithms, and actuator mixing logic in C and C++.
- Low-Level Drivers: Develop and maintain bare-metal peripheral drivers for highlyintegrated microcontrollers to interface with IMUs, magnetometers, barometers, airspeed sensors, and GPS modules.
- RTOS Optimization: Configure and profile Real-Time Operating Systems (e.g., FreeRTOS, ChibiOS, Zephyr) for highly predictable task scheduling, deterministicexecution, and minimal jitter. System Integration & Deterministic Communication
- Bus Architecture: Manage and optimize communication protocols over lightweight, low-pin-count buses including CAN bus (UAVCAN/Cyphal), SPI, I2C, and UART tointerface with Electronic Speed Controllers (ESCs) and servos.
- Fault Tolerance: Implement robust fault detection, isolation, and recovery (FDIR)mechanisms to immediately handle small UAV anomalies, such as sensordropouts, frame vibrations, or battery voltage drops.
- HIL Testing: Build and utilize Hardware-in-the-Loop (HIL) simulation setups tosafely validate flight software performance and corner-case failure modes on thebench. SWaP Optimization & Architecture
- Resource Management: Target, profile, and optimize memory footprint(SRAM/Flash) and CPU usage on high-performance microcontrollers (e.g., ARMCortex-M4/M7/H7).
- Open-Source Hardening: (If applicable) Maintain, customize, and secure opensource small UAV ecosystems like PX4, ArduPilot, or Betaflight for customproprietary hardware configurations. Required Skills & Qualifications
- Education: Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, Robotics, or a related technical discipline.
- Firmware Expertise: Deep professional experience developing production-gradeembedded C and C++ software for real-time systems.
- Microcontroller Fluency: Extensive experience with ARM Cortex-M or similararchitectures, registers, timers, DMA, and interrupt handling.
- Lab Tool Proficiency: Hands-on experience using oscilloscopes, logic analyzers, multi-meters, and JTAG/SWD debuggers to isolate hardware vs. software issues.
- State Estimation Basics: Practical understanding of digital filtering (e.g., notchfilters, low-pass filters) used to mitigate high-frequency frame vibrations common insmall UAVs.
- Direct experience contributing to or deploying customized PX4 Autopilot orArduPilot stacks onto custom small UAV airframes.
- Background in mathematical modeling, MATLAB/Simulink code generation, orworking alongside GNC engineers to port control laws into C.
- Experience implementing lightweight safety protocols or functional safetyframeworks scaled down for consumer, commercial, or defense-grade small UAVsystemsAbout Knightwerx
Before you apply
Applying takes about a minute. These four things decide how fast it moves after that.
Your profile is current
It's what we read first. Occupations, seniority and locations matter more than a long history.
Two examples you can talk through
Not a portfolio — just two pieces of work where you can explain the decisions and what you'd change.
A number in mind
What you're on now and what would make you move. We negotiate better when we know both.
Your notice period
Employers plan around it, and it's the question that stalls offers most often.
Once you apply, someone reads it and calls you before anything reaches the employer — usually within two working days.
More like this
