Description
We are seeking an experienced Embedded Flight Software Developer to join our Airborne Systems Business Area team in Huntsville, Alabama. As a key member of our team, you will have the opportunity to research, develop, and demonstrate software for tactical strike, sensors, autonomy, UAS, and counter-UAS solutions.
The successful candidate will focus on developing robust, innovative, modular software for real-time embedded airborne systems. You will work on various software products, including embedded flight software, analysis tools/simulations, mission planning software, and components of mission-critical systems. Your expertise will cover a range of computing technologies, hardware, interfaces, and development/debugging tools.
Primary Responsibilities
- Design and develop modern, object-oriented C++ embedded software for airborne computing subsystems.
- Collaborate with peer team members to develop software in accordance with software coding and safety standards.
- Create, execute, and automate unit and integration tests on software components.
- Work as part of an Agile software development team, participating in planning, task estimation, execution, and progress reporting.
- Participate in code reviews to maintain code quality and share knowledge with the team.
- Troubleshoot and resolve application issues and bugs.
- Contribute to team guides and technical data supporting development, test, and sustainment of fieldable software.
- Use GitLab CI/CD pipelines for configuration management, continuous integration, and automated testing.
Basic Qualifications
- Bachelor's degree in Software Engineering, Computer Science, Computer Engineering, Electrical Engineering, Aerospace Engineering, Mathematics, or equivalent technical degree with an overall GPA of 3.0 or higher.
- U.S. citizenship and eligibility to obtain and maintain a U.S. Department of Defense security clearance.
- 0-18 years of relevant technical experience, including developing, integrating, testing, or troubleshooting embedded software or embedded-adjacent applications.
- Knowledge of software engineering practices, such as requirements analysis, configuration management, version control, coding standards, peer review, unit testing, continuous integration, integration testing, and software verification.
- Strong competency in detailed software design and coding in C, C++, Java, C#, Rust, or Python, with the ability to learn and effectively develop in modern C++.
- Familiarity with Agile development methodologies and use of Agile tools, such as GitLab Ultimate, Atlassian Jira, Trello, or Monday.com.
- Strong written and verbal communication skills and professional character.
Preferred Qualifications
- Experience with applicable industry standards, such as IEEE 12207, CMMI, DO-178C and/or DO-278, RMF, MIL-STD-882.
- Experience using AI to assist with software coding, testing, and/or technical document generation.
- Ability to work across multiple products under development by multiple small teams.
- Experience with the design and implementation of time-critical software for integrated systems.
- Experience with hardware/software integration, board bring-up, and debugging using tools such as JTAG debuggers, logic analyzers, logs, oscilloscopes, protocol analyzers, RTOS applications, or similar development tools.
Pay Range: $69,550.00 - $125,725.00