
Embedded Rust Software Engineer
- Tampa, FL
- Permanent
- Full-time
- Design and develop embedded software, focusing on C-to-Rust migration.
- Perform trade studies and embedded architecture design for Rust-based solutions.
- Create and maintain engineering documentation: Requirements Specs (SHRS, IRS), Interface Control Documents (ICDs), and Design Descriptions (SHDD).
- Develop and execute unit, integration, and acceptance test plans.
- Manage configuration control for software development items.
- Work within Agile and Waterfall development environments.
- Provide regular progress updates to stakeholders.
- Identify and implement process and tool improvements.
- Stay current with emerging embedded and Rust technologies.
- Collaborate in a high-performance, mission-driven team environment.
- Other tasks as assigned.
- Active US Government Secret Security Clearance (US citizenship required).
- Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, or related field; or equivalent combination of education and experience.
- 2+ years of experience in embedded software development, including C-to-Rust code conversion, low-level embedded software design, and coding in both C and Rust.
- Hands-on experience with embedded processors, SoC development, and ARM-based systems integration with firmware.
- 5+ years of embedded software development experience.
- Proficiency in constrained Rust environments (no-std, heapless), ANSI C, and Python.
- Experience with openOCD, gdb, and AMD Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit.
- Strong troubleshooting skills for low-level embedded issues, including memory management.
- Familiarity with SEI CMMI processes for small, agile teams.
- Understanding of NSA High Assurance Certification process and relevant US DoD systems.
- Analytical problem-solving skills with the ability to visualize outcomes, assess technical risks, and think creatively.
- Excellent communication, collaboration, and interpersonal skills with a positive, adaptable work ethic.