Principal Embedded Software Engineer — Automated Test & Verification
Melbourne, FL (Hybrid Remote)
Long Term Contract-to-Hire with benefits
A leading aerospace technology company is seeking an Automated Test & Verification Software Engineer to support the verification, validation, and certification of safety-critical airborne software for advanced aviation systems. This engineer will work closely with embedded software, systems, hardware, quality, certification, and flight-test teams to develop automated test solutions and produce objective evidence that software meets its requirements.
This is a hands‑on role for an engineer with aviation-domain experience who understands the rigor of DO-178C software verification. The ideal candidate has experience building automated test frameworks for embedded or real-time systems and can connect requirements, test cases, results, coverage, traceability, and certification artifacts across the airborne software lifecycle.
What You’ll Do
- Design, develop, and maintain automated test and verification software for safety-critical embedded aviation systems.
- Create automated test frameworks, test harnesses, simulators, stubs, drivers, and data‑analysis tools used to verify airborne software.
- Translate high‑level, low‑level, interface, and derived software requirements into complete, traceable, repeatable test procedures and automated test cases.
- Develop and execute unit, software integration, hardware/software integration, hardware‑in‑the‑loop, system integration, regression, robustness, and requirements‑based testing.
- Support verification activities in accordance with DO-178C, including the production and maintenance of certification‑quality verification evidence.
- Build and maintain requirements‑to‑test traceability, ensuring every applicable software requirement is verified and that test results are reviewable and reproducible.
- Develop automated approaches for structural coverage analysis, including statement, decision, MC/DC, and data/control coupling coverage, as applicable to the project’s Design Assurance Level.
- Identify coverage gaps, analyze test results, support root‑cause investigations, and work with software engineers to resolve defects and verification anomalies.
- Develop test automation in Python, C/C++, MATLAB/Simulink, shell scripting, or comparable languages and environments.
- Build test environments that emulate or interface with avionics hardware, sensors, actuators, flight‑control computers, communications buses, and external aircraft systems.
- Support hardware‑in‑the‑loop and software‑in‑the‑loop test environments, including test‑bench configuration, test‑equipment integration, automation, and maintenance.
- Interface with avionics communication protocols and buses such as CAN, ARINC 429, ARINC 664/AFDX, MIL‑STD‑1553, Ethernet, RS‑232/422/485, SPI, I2C, or UART.
- Partner with embedded software, systems, and hardware teams to define testability requirements, test strategies, acceptance criteria, and verification plans early in the development lifecycle.
- Support code reviews, test‑case reviews, verification reviews, audits, and certification milestones.
- Maintain controlled test procedures, test scripts, test reports, problem reports, configuration records, and verification documentation.
- Support lab integration, ground testing, flight‑test readiness, and post‑test data analysis when needed.
Required Qualifications
- 7+ years of professional experience in software test, verification, validation, test automation, embedded software, or systems integration engineering.
- Demonstrated experience verifying embedded, real‑time, safety‑critical, or mission‑critical software in aviation, aerospace, defense, UAS/drone, eVTOL, avionics, automotive safety, medical devices, or a similarly regulated environment.
- Hands‑on experience developing automated test software, test harnesses, simulation tools, regression suites, or hardware‑in‑the‑loop test solutions.
- Strong programming ability in Python and/or C/C++; experience with scripting and test‑tool development is essential.
- Experience performing unit, integration, system, regression, and requirements‑based testing for embedded or real‑time systems.
- Working knowledge of the software development lifecycle, including requirements, design, implementation, verification, configuration management, issue tracking, and release readiness.
- Ability to interpret software requirements, interface‑control documents, electrical schematics, hardware documentation, and system‑level architecture.
- Familiarity with embedded hardware, microcontrollers/processors, RTOS or bare‑metal environments, sensors, actuators, and device communication interfaces.
- Experience troubleshooting software and test failures using logs, debuggers, telemetry, lab equipment, and structured root‑cause analysis.
- Strong documentation, analytical, communication, and cross‑functional collaboration skills.
Preferred Qualifications
- Direct experience supporting DO-178C verification activities for airborne software.
- Experience working on software developed to DAL A, DAL B, DAL C, or DAL D objectives.
- Familiarity with DO-178C supplements and related guidance, including DO-330 tool qualification, DO-331 model‑based development and verification, DO-332 object‑oriented technology, or DO-333 formal methods.
- Experience creating or reviewing Software Verification Plans, verification procedures, test cases, test reports, Software Accomplishment Summaries, problem reports, or certification‑review artifacts.
- Experience with structural coverage tools and analysis, including statement coverage, decision coverage, MC/DC, and data/control coupling analysis.
- Experience with verification and test toolchains such as VectorCAST, LDRA, Rapita, Cantata, Tessy, IBM Rational Test RealTime, Polyspace, or comparable tooling.
- Experience developing or supporting HIL, SIL, PIL, integration‑lab, simulation, digital‑twin, or automated test‑bench environments.
- Familiarity with requirements and lifecycle‑management tools such as DOORS, Polarion, Jama, Codebeamer, Jira, Git, Jenkins, GitLab CI, or comparable platforms.
- Experience with MATLAB/Simulink, model‑based testing, test‑vector generation, or simulation‑based verification.
- Familiarity with aircraft and avionics interfaces, including ARINC 429, ARINC 664/AFDX, CAN Aerospace, MIL‑STD‑1553, Ethernet, or serial communication protocols.
- Experience supporting FAA, EASA, military‑airworthiness, UAS, or eVTOL certification programs.
- Knowledge of DO-254, ARP4754A, ARP4761, systems safety, configuration management, or quality‑assurance processes in an aerospace environment.