This position will design and develop flight or mission-critical onboard software for UAV systems. As part of a dynamic, multidisciplinary team, the candidate will participate hands-on in the full software life-cycle, from concept through implementation, integration all the way to flight test.
Specifically the candidate will:
- Define, analyze and review software requirements to meet defined and anticipated customer needs and system quality and performance standards.
- Collaborate with other enigneering disciplines in planning, design and development of systems to ensure software and hardware performance and compatibility
- Design software architecture and interfaces and implement functionality using a model-based approach.
- Write test plans and test cases, conduct unit-, integration-, and system-level testing.
Typical software functionality for a UAS includes guidance, navigation & control, mission sequencing, payload control, redundacy and contingency management, uplink and downlink packet encoding and decoding, converting between different serial protocols, hardware-in-the-loop simulation, ground based GUIs, and aircraft subsystem control (i.e., engine, electrical system, fuel system).
- B.S. in Computer Science or applicable engineering or science field, Master's degree preferred.
- 0 to 5 years of experience.
- Must be willing and able to be an active contributor (developer) in any of the software life-cycle phases.
- Must have at least one year of hands-on professional experience in at least one, ideally a combination, of the following areas:
- Model-based design and/or test using the Simulink/Stateflow tool chain.
- Software development in a relevant subject matter area: UAS or other robotic system guidance, navigation and control; ground- or airborne mission systems; general aerospace flight control or cockpit avionics systems; ground stations; payload control.
- Development/operations of hardware-in-the-loop simulators, conducting testing and troubleshooting of HW/SW interfaces.
- Service Oriented Architectures (SOA) applied to aerospace or military systems (C2, payload data, etc.)
- Must be willing to work under, and help refine, a defined software development process.
- Prior experience in any of the following areas is a plus:
- Work experience or internship with developing production software in an autonomous vehicle or robotics environment.
- Operating in a regulated development environment, like CMMI (level 3 or higher) or DO-178B.