REGENT Embedded Software Engineer Intern at REGENT develops embedded test harnesses in C++ and verification tooling in Python for flight control software. Contributes to building a verification framework for certification standards.
Responsibilities
Every vehicle REGENT builds will eventually need to prove it's safe and sound to the standards of real certification — and that proof starts with the verification framework underneath it. As an Embedded Software Engineering Intern, you'll work directly in C++ and Python to help build Squire, the verification framework being developed as the test baseline for Viceroy's VCS software. You'll write test harnesses that hook directly into embedded flight control code, build out the tooling around it — generating test cases, parsing results, automating runs — and help lay groundwork for hardware-in-the-loop testing down the line. Because Squire is still taking shape, you won't be handed a fixed spec to execute; you'll be building something real while its architecture is still being defined, which means your judgment and your code both matter.
You'll sit within the Engineering & Technology team's Software Engineering group, contributing directly into the same codebase the rest of the embedded team works out of. This isn't peripheral test-writing — it's infrastructure work that will let the whole team eventually verify Viceroy's software against a certifiable standard, work that's foundational to getting SEAGLIDERS safely out of the water and into real coastal routes. You won't be expected to arrive knowing certification standards or verification framework architecture inside and out; the team will teach you that as you go. What matters is that you can write solid embedded code, build useful tooling around it, and stay comfortable figuring things out as the target evolves. If you're someone who gets energized by building the thing that makes everything else provable, you'll find real purpose in this work.
Build Embedded Test Harnesses: You'll write C++ test harnesses that hook directly into Viceroy's VCS software, giving the team a real way to exercise and validate flight control code rather than just scripting around its edges.
Develop Verification Tooling: You'll write Python to generate test cases, parse results, and automate test runs, building out the tooling that makes Squire actually usable as a framework rather than a one-off script.
Design Requirements-Traceable Tests: You'll build tests that trace cleanly back to requirements, laying groundwork for a test environment that can eventually hold up against certification-grade scrutiny.
Contribute To A Shared Codebase: You'll commit directly into the same repository the embedded team works out of, writing clean, reviewable code that merges in rather than living off to the side.
Work Hands-On With Hardware: You'll work with electronic hardware, including microprocessors, as part of exercising and validating the software you're testing against.
Help Shape Squire As It's Built: You'll make real calls about how the framework should work as its architecture is still being defined, adapting your approach as Viceroy's design evolves alongside it.
Lay Groundwork For HIL Testing: You'll work toward supporting hardware-in-the-loop testing, building the pieces that will eventually let the team verify software against real hardware behavior.
What You'll Bring
Strong C++ Fundamentals: You're comfortable reading and writing embedded C++ well enough to build real test harnesses against it, not just work around the margins.
Practical Python Scripting: You can write solid Python to stitch together tooling — generating test cases, parsing output, automating runs — and use it to move a framework forward quickly.