Staff Engineer, Software, GCS - C++
Design, develop, and lead GCS/C2 software for unmanned systems using C++, Qt/QML, and QGroundControl. Own major features, mentor engineers, and support live mission operations.
About the job
What you'll do
- Develop & Field GCS/C2 Software — Design, develop, and optimize high-performance, responsive GCS software and C2 applications, focusing on map-centric mission planning, real-time command & control, video streaming, and telemetry visualization. Customize and extend QGroundControl (QGC) or related Qt/C++ frameworks to support custom vehicle protocols and multi-agent operations.
- Technical Leadership — Own technical direction for major GCS features and systems; architect UI/UX layouts, design robust client/server interfaces, and lead technical decision-making within your project area.
- Collaboration Across Teams — Act as a primary technical interface with the Autonomy Capabilities team, Perception team, flight operations, and external partners (platform integrators, C2 providers, and vehicle vendors); author and negotiate APIs, ICDs, and interface contracts rather than just consume them.
- Mentorship & Growth — Mentor mid-level engineers on the team; partner with managers on onboarding, leveling, and growth planning. Formally onboard senior new hires.
- Design, UX, & Documentation — Drive design reviews, UI/UX prototyping, and ICD definition; champion rigorous coding standards, unit/integration testing, and developer/operator documentation to close process gaps that span teams.
- Pre-deployment Preparation — Own the build, configuration, and validation process for mission-ready ground stations; coordinate hardware/software compatibility, UI/UX readiness, and release cadence with capability and feature teams.
- On-site Test & Mission Support — Travel to test sites and support live mission operations (flight tests, range exercises, on-water trials, integration events), working closely with operators and pilots to gather feedback, debug live C2 systems, and troubleshoot interfaces under time-critical field constraints.
- Hardware/Software Debugging — Diagnose and resolve integration issues across complex GCS/C2 stacks, radio links, payload controls, and telemetry streams — including UI responsiveness bottlenecks, memory leaks, and network latency profiling under operationally-representative loads.
- Mission Data & Debrief Support — Architect and implement post-mission debrief utilities and telemetry analysis tools that parse, play back, and visualize telemetry, logs, and payload data for rapid post-mission analysis and issue reproduction.
- Continuous Improvement — Build tools and automation scripts to improve C2 deployment pipelines, test/mission reliability, and simulation-based operator testing.
- C2 Interoperability & Standards — Own compliance and integration with command-and-control standards and architectures (e.g., A-GRA, UCI, OMS, STANAG 4586, MAVLink).
- Hiring — Interview candidates, help define the skills bar for open roles in your area, and onboard new engineers into your sub-program.
Required qualifications
- BS/MS in Computer Science, Software Engineering, Computer Engineering, or equivalent practical experience.
- Typically requires a minimum of 7 years of related experience with a Bachelor’s degree; or 6 years and a Master’s degree; or 4 years with a PhD; or equivalent work experience.
- Strong proficiency in C++, with experience developing complex, multi-threaded, or latency-sensitive desktop applications.
- Experience building responsive user interfaces using Qt/QML (or similar modern UI frameworks).
- Hands-on experience customizing, extending, or building with QGroundControl (QGC) or similar open-source/proprietary ground station software.
- Experience full-stack or building backend in C/C++, Python, TypeScript, or Go, including service orchestration, command/status interfaces, and data pipelines between UI, ground services, and vehicle-side components.
- Deep familiarity with networked and distributed systems, including UDP/TCP transport, custom binary protocols, reliable messaging, pub-sub/IPC middleware, and serialization/IDL tooling.
- Experience using AI-assisted development tools to accelerate software design, implementation, debugging, testing, and code review while maintaining strong engineering judgment, validation discipline, and ownership of final technical decisions.
- Demonstrated experience owning a major software capability or system from architecture through field delivery.
- Track record of mentoring engineers and growing technical talent.
- Experience authoring or negotiating interface contracts, schemas, or ICDs with internal or external stakeholders.
- Strong debugging and profiling skills, including diagnosing memory leaks, UI responsiveness bottlenecks, and network latency issues.
- Ability to obtain a SECRET clearance.
Preferred qualifications
- Experience with Geographic Information Systems (GIS), map rendering engines (e.g., Mapbox, Cesium, Esri, QGC Map Engine), and 2D/3D spatial data visualization.
- Familiarity with video streaming protocols and multimedia frameworks (e.g., RTSP, WebRTC, GStreamer, H.264/H.265 video codecs).
- Experience developing post-mission telemetry analysis, log parsing, or interactive playback/debrief systems.
- Familiarity with containerization (e.g., Docker, Kubernetes) and deploying C2 services to local, edge, or cloud environments.
- Experience with platform control / autopilot protocols (e.g., MAVLink, STANAG 4586) or DoD C2 standards (e.g., A-GRA, UCI, OMS).
- Experience working closely with flight operators, pilots, or military stakeholders to gather feedback and refine user workflows.
- Active Secret or Top Secret clearance.
Skills
C++, Qt, Qml, Qgroundcontrol, Python, TypeScript, Go, Udp, Tcp, Mavlink, Gis, Mapbox, Cesium, Docker, Kubernetes
Similar jobs
Embedded Engineering jobsDevelop embedded firmware and software architectures for UAV avionics, integrating RTOS platforms, sensors, autonomy systems, and hardware-in-the-loop testing. The role requires staff-level embedded development expertise in C/C++, bare-metal systems, Linux or RTOS bring-up, and a STEM degree.
Leads requirements, architecture, integration, performance characterization, and validation for autonomous-vehicle platform systems. Requires systems engineering experience, expertise in robotics and HIL or on-road testing, plus C++, Python, and MATLAB proficiency.
Research and develop guidance, navigation, and control algorithms for high-performance aircraft, including vehicle dynamics modeling and control-system optimization. The role requires a relevant engineering degree, 7+ years of related experience, production C++, MATLAB, Simulink, and eligibility for a SECRET clearance.
Leads firmware architecture and a technical team developing real-time embedded control systems for smart hardware. The role requires 7+ years of firmware experience, strong C/C++ and Python skills, circuit-level debugging expertise, and technical leadership.
Develop and integrate embedded Linux software for cellular and wireless connectivity in autonomous vehicles, including modem vendor integration, protocol-stack debugging, telemetry, and performance optimization. Requires 10+ years of embedded wireless experience and strong C/C++ and Linux skills.