Senior Software Engineer; C++
Listed on 2026-10-05
-
Software Development
Software Engineer, DevOps
Worker Type Regular Job Description Summary
As a Sr. Software Engineer (Applications) one works with and is mentored by a talented group of engineers in a fast moving, collaborative Agile development environment. In this role, one plans, designs, develops and tests software systems or applications for software enhancements and new products including cloud-based or internet-related tools.
Position Responsibilities- Develops C++ software to implement control algorithms, interface with ground control station (GCS) software, and integrate with various payloads
- Supports the development of ground control station (GCS) software for Android
- Owns architecture and design decisions for software systems, ensuring alignment with program requirements and long-term maintainability.
- Evaluates technical tradeoffs and risk across performance, reliability, and schedule constraints
- Troubleshoots technical issues with aircraft and payloads
- Interfaces with 3rd party vendors to integrate new payloads onto the platform
- Develops user manuals and other technical documentation
- Collaborates with systems engineers and other software disciplines to ensure consistent, reliable system performance
- Partners with the Chief Engineer and Product Line Manager to define requirements, plan new projects, and evaluate emerging opportunities
- Operates in a continuous learning environment; provides technical leadership, guidance, and mentoring to less experienced engineers
- Bachelor's degree in a Science, Technology, Engineering, or Mathematics (STEM) discipline from an accredited university and 8 years of related experience; or Master's degree in a STEM discipline with 6 years of related experience; or PhD with 4 years of related experience
- Extensive, hands‑on experience with modern C++, maintainable software architecture, and modular system design
- Experience with DDS (Data Distribution Service) or similar protocols, including managing data distribution across disparate nodes over constrained networks, and general knowledge of networking topologies and principles
- Experience developing software for mechatronic or hardware‑integrated systems, including familiarity with safety‑critical concepts such as determinism and real‑time systems
- Ability to engage directly with technical and non‑technical customers
- Hands‑on knowledge of CMake or similar build systems; able to support cross‑platform builds for Android and Linux (x86 and ARM)
- Experience with UAS, drones, robotics, autonomous vehicles, or other embedded systems
- Experience with CI/CD pipelines (Git Lab or similar)
- Experience with Docker — used for application deployment, development and testing environments
- Kotlin or Java experience (e.g., for Android development)
- Comfortable taking ownership across multiple areas of a project rather than working in a narrow, siloed role
- Willingness to travel locally (Occasionally)
Physical Demands Ability to work in an office environment (Constant) Required to stand and sit for long periods; talk, hear, and use hands and fingers to operate a computer and telephone keyboard (Frequent)
Clearance Level No Clearance
The salary range for this role is: $111,500 - $170,000
Aero Vironment considers several factors when extending an offer, including but not limited to, the location, the role and associated responsibilities, a candidate’s work experience, education/training, and key skills. ITAR Requirement:
This position requires access to information that is subject to compliance with the International Traffic Arms Regulations (“ITAR”) and/or the Export Administration Regulations (“EAR”). In order to comply with the requirements of the ITAR and/or the EAR, applicants must qualify as a…
(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).