Software Engineer (Python/Go/Rust)
Role details
Job location
Tech stack
Job description
Software Engineer will design, develop, and deploy software solutions optimized for resource-constrained edge environments, including onboard flight systems, ground control infrastructure, and secure data pipelines.
Ideal candidate brings hands-on experience operating within the defense acquisition ecosystem and understands the unique requirements of building software for classified and unclassified government programs.
Collaborate closely with hardware, systems, and program teams to deliver software that meets stringent reliability, security, and performance standards required for defense and dual-use aerospace applications.
Design, develop, test, and maintain software for autonomous drone platforms, edge computing nodes, and supporting ground systems
Build and optimize applications for deployment in resource-constrained, low-latency edge environments with limited connectivity
Develop embedded and near-embedded software components for real-time and near-real-time aerospace applications
Write clean, maintainable, well-documented code following established engineering standards and best practices
Conduct thorough code reviews and contribute to continuous improvement of software development processes
Architect and implement hybrid edge-cloud solutions that enable data processing and decision-making at the point of need
Deploy and manage containerized workloads on edge infrastructure using Kubernetes and related orchestration tooling
Design secure, resilient data pipelines between onboard systems, edge nodes, and cloud environments
Leverage Google Cloud Platform services to support mission data processing, analytics, and system telemetry
Optimize software performance for size, weight, and power (SWaP)-constrained platforms
Develop software in accordance with DoD security requirements, including RMF, STIG, and relevant cybersecurity frameworks
Integrate software components with hardware systems, sensors, and communication links on UAS platforms
Develop and execute unit, integration, and system-level test plans to validate software functionality and performance
Support hardware-in-the-loop (HIL) and software-in-the-loop (SIL) testing activities
Troubleshoot and resolve complex software and integration issues in both lab and field environments
Support flight test operations and real-time diagnostics as needed
Requirements
Eligible for Secret or Top-Secret level clearance
8+ years of software engineering experience
4+ years supporting defense, intelligence, or government programs
Proficiency in one or more primary languages: Python, C++, Go, or Rust; familiarity with multiple languages preferred
Direct experience with unmanned aerial systems (UAS), autonomous vehicles, or aerospace platform software
Background with DoD rapid acquisition programs, OTAs, or SBIR-funded development efforts
Experience with ROS/ROS2, MAVLink, or similar robotics and autonomy middleware
Familiarity with CI/CD pipelines in air-gapped or restricted network environments
Advanced degree in a relevant engineering or computer science discipline
Experience with MLOps and deploying machine learning models at the edge
Hands-on experience deploying software to edge computing environments with constrained compute, memory, or network resources
Experience with containerization and orchestration technologies (Docker, Kubernetes, K3s, or equivalent)
Working knowledge of cloud platforms, preferably Google Cloud Platform (GCP)
Familiarity with real-time operating systems (RTOS), embedded Linux, or similar platforms relevant to aerospace or defense applications
Understanding of secure software development lifecycle (SSDLC) practices and DoD cybersecurity frameworks
Experience working within ITAR-controlled programs or with export-controlled technologies
Ability to obtain and maintain a US security clearance; active clearance strongly preferred
Certification (currently held or willing to obtain) - Google Cloud Associate, Google Cloud Professional Architect, Google Cloud DevOps, etc.
Bachelor's degree in Computer Science, Software Engineering, Electrical Engineering