Software Engineer, Android Native; C++/NDK
Job in
Salt Lake City, Salt Lake County, Utah, 84193, USA
Listed on 2026-07-15
Listing for:
TEAL DRONES INC
Full Time
position Listed on 2026-07-15
Job specializations:
-
Software Development
Android Developer, Software Engineer, Embedded Software Engineer, C++ Developer
Job Description & How to Apply Below
Position Summary Teal Drones is looking for a hands-on Android Engineer (C++/NDK) to own and evolve the Android-based ground control station experience for our drone platforms. This role focuses on building, debugging, and optimizing native C++ systems on Android for mission planning, telemetry, and real-time vehicle control.
You will work inside a QGround
Control (QGC/Qt) environment, but we are hiring first for strong C++ engineering depth. If you are excellent in C++ and Android native development, we expect you can ramp quickly on QGC/Qt specifics.
The questions you’ll be asked every day are ones like:
Why is MAVLink telemetry dropping under load on this Android device? How do we improve reliability and latency across UDP/TCP/USB/Serial paths? What’s the fastest way to debug native threading, memory, and performance issues on ARM
64 Android in field conditions?
We are looking for someone comfortable across Android internals, C++/NDK, networking, hardware interfaces, and real-time systems. Prior Qt/QGC experience is valuable, but not required if you bring strong adjacent experience.
Essential Duties and Responsibilities Android Native (C++/NDK) Development Own and maintain native C++ ground control functionality, including feature development, bug fixes, and long-term stability.
Build and optimize C++ components using the Android NDK to support real-time mission workflows and vehicle control.
Develop and maintain robust JNI boundaries between Android and native layers, with strong ownership of memory, threading, and lifecycle behavior.
Debug and resolve issues in multithreaded native code, event loops, and cross-language integration points.
Contribute C++ changes within QGC/Qt architecture while maintaining compatibility with upstream QGC.Android Platform Integration Build, package, and optimize ARM
64 Android applications, including APK/AAB generation, signing, and deployment workflows.
Debug Android-specific issues such as lifecycle handling, permissions, USB/serial communication, and network instability.
Integrate MAVLink communication over multiple transports (UDP, TCP, USB, Serial) on Android devices.
Optimize performance for real-time telemetry, video streaming, and map rendering on resource-constrained devices.
Ensure compatibility across a range of Android hardware (tablets, rugged devices, and field controllers).MAVLink & Drone Communication Implement and debug MAVLink message handling, routing, and reliability under varying network conditions.
Diagnose telemetry dropouts, latency issues, and message parsing errors.
Extend MAVLink functionality for custom payloads or vehicle behaviors.
Collaborate with firmware engineers to ensure end-to-end communication reliability between drone and ground control systems.
UI/UX & Qt/QML Development Design and implement responsive, real-time UI components for mission-critical workflows.
Optimize rendering performance for maps, overlays, and telemetry dashboards.
Customize mission planning interfaces and flight data visualization in QGC/Qt and Android-integrated surfaces.
Ensure usability in field conditions (sunlight readability, touch responsiveness, and offline operation).Build Systems & Tooling Maintain and improve build systems across C++, Qt, and Android tool chains.
Manage Qt versions, Android SDK/NDK dependencies, and cross-compilation workflows.
Automate builds and testing pipelines using CI/CD systems (e.g., Jenkins or Git Lab CI).Debug build failures across native, Qt, and Android layers.
Reliability & Performance Profile and optimize CPU, memory, and battery usage on Android devices.
Debug crashes, ANRs, and memory leaks across C++ and Java/Kotlin boundaries.
Ensure stable operation during long-duration missions and intermittent connectivity.
Implement logging, diagnostics, and telemetry capture for field debugging.
Security & Compliance Ensure secure communication channels between Android devices and drones.
Manage permissions, secure storage, and device access policies on Android.
Support compliance requirements for government and defense-related deployments.
Collaboration & Field Support Work closely with embedded, firmware, and flight-test teams to debug…
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
Search for further Jobs Here:
×