Application Software Engineer
- Compensation
- Not disclosed
- Location
- Cambridge, United Kingdom
- Work setup
- Onsite
- Seniority
- Not specified
- Employment
- Not specified
- Experience
- Not specified
- Category
- Software engineering
- Posted
Skills
Must have
- Experience developing ground control systems, with evidence of technical ownership from requirements through integration and test
- Strong commercial experience with Rust, including asynchronous and concurrent application design OR
- Experience building production user interfaces in Flutter/Dart
- A good understanding of UI/UX principles, especially for operator-facing, safety- or mission-critical displays
- Experience integrating with external hardware and systems over network and serial interfaces, including fault handling and recovery
- Practical experience with field trials, system integration, log and data analysis, and fault diagnosis
- A strong grasp of software engineering practice: automated testing, version control, CI/CD, and code review
Nice to have
- Experience with Tokio and the async Rust ecosystem
- Experience with gRPC and Protocol Buffers for service and client–server interfaces
- Experience with other ground station or command-and-control systems, for example UAS ground control, mission planning, telemetry and video handling, map-based situational awareness, or radar and senso
- Familiarity with vehicle communication protocols
- Experience building simulation, hardware-in-the-loop, or integration test environments for automated validation
- Experience with Linux-based deployment, secure software delivery, or packaging for fielded systems
- Experience in a fast-paced R&D or startup environment with rapid prototype iteration
Full description
Overview
We're hiring an Application Software Engineer to own the design and development of our ground control station software, from early concept through integration and test. You'll define the application architecture and work with embedded, systems, and test engineers to build reliable, responsive operator tools. You'll take features from prototype to field-deployed software, and your work will directly shape how operators monitor, command, and trust our systems.
Responsibilities
- Work with the wider engineering team to identify and define the architecture of our application software
- Build fast, well-tested backend services in Rust OR operator interfaces in Flutter, with accreditation in mind
- Design clear, robust interfaces between the ground station, vehicles, sensors, and third-party systems
- Work with operators and stakeholders to turn operational needs into intuitive, low-workload user interfaces
- Scope and expand our CI, automated testing, and release infrastructure
- Contribute to technical decisions, code reviews and engineering best practice across our applications
Requirements
- Experience developing ground control systems, with evidence of technical ownership from requirements through integration and test
- Strong commercial experience with Rust, including asynchronous and concurrent application design OR
- Experience building production user interfaces in Flutter/Dart
- A good understanding of UI/UX principles, especially for operator-facing, safety- or mission-critical displays
- Experience integrating with external hardware and systems over network and serial interfaces, including fault handling and recovery
- Practical experience with field trials, system integration, log and data analysis, and fault diagnosis
- A strong grasp of software engineering practice: automated testing, version control, CI/CD, and code review
Preferred Qualifications/Experience
- Experience with Tokio and the async Rust ecosystem
- Experience with gRPC and Protocol Buffers for service and client–server interfaces
- Experience with other ground station or command-and-control systems, for example UAS ground control, mission planning, telemetry and video handling, map-based situational awareness, or radar and sensor integration
- Familiarity with vehicle communication protocols
- Experience building simulation, hardware-in-the-loop, or integration test environments for automated validation
- Experience with Linux-based deployment, secure software delivery, or packaging for fielded systems
- Experience in a fast-paced R&D or startup environment with rapid prototype iteration
What We Offer
- Competitive compensation and stock options