Embedded Software Engineer

AERONIX INCMelbourne, FL
Onsite

About The Position

We are seeking a skilled Embedded Software Engineer to design, develop, and integrate software for embedded systems with an emphasis on memory‑safe languages development practices aligned with NSA/DoD guidelines. This role covers the full development lifecycle, from architecture through validation, across both RTOS‑based and bare‑metal environments. The ideal candidate will have strong technical expertise, excellent communication skills, and the ability to present software solutions to internal teams and customers.

Requirements

  • Strong proficiency in C for Embedded Linux, RTOS, and bare‑metal environments.
  • Experience with Memory‑safe software development, including proficiency with Rust.
  • Experience integrating software with custom processor‑based circuit card assemblies.
  • Experience in requirements development and management.
  • Familiarity with formal verification or assurance‑oriented development procedures.
  • Ability to work effectively in a team environment on projects with many requirements.

Nice To Haves

  • Experience with Embassy multitasking and Hardware Abstraction Layers (HALs) with Rust.
  • Experience with secure coding practices aligned with NSA/DoD guidelines (e.g., SERD 2.0).
  • Register‑level configuration/setup software, with low-level programming in assembly, C, or Rust.
  • Device driver development for UARTs, I²C, SPI, and similar interfaces.
  • Experience with Yocto or Buildroot embedded Linux build environments.
  • Experience with toolchains such as JIRA, Confluence, Bitbucket (Git), and Jenkins.
  • Knowledge of Requirements frameworks, especially DOORS, Jama and Excel.
  • Experience with testing equipment, instrumentation, and data acquisition tools.
  • Knowledge of messaging protocols within the OSI 7‑layer stack.
  • Working knowledge of C++ and Python.

Responsibilities

  • Perform full lifecycle development for embedded systems, including architecture definition, implementation, unit testing, and integration.
  • Apply memory safe development practices, including use of the Rust programming language appropriate for safety or security critical components.
  • Develop software for both RTOS based systems and bare metal CPU environments without typical operating system services.
  • Review customer requirements, translate them into specifications, and produce technical documentation, designs, and operational concepts.
  • Collaborate closely with hardware engineers to ensure seamless integration with custom electronic components and circuit card assemblies.
  • Develop and execute test plans and procedures; perform debugging, troubleshooting, and ensure compliance with functional and security requirements.
  • Conduct design and code reviews, resolve defects, and adhere to established development processes, configuration management, and release practices.
  • Develop low level device drivers and support component level integration on custom hardware.
  • Support automated build and test pipelines for embedded software.
  • Present and explain software designs and solutions to internal teams and customers.
  • Work independently while contributing within a structured technical team.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service