Jobs · Virginia

Embedded Software Engineer

Actalent · Warrenton, VA · 1 mo ago
Hybrid$60–$75/hrContract

About the role

This role focuses on developing embedded software for advanced radio systems used in edge communication products, enabling reliable military communications in signal-constrained environments. You will participate in the full software development lifecycle, work closely with hardware engineers, and contribute to secure, high-performance embedded solutions that operate in demanding real-time conditions.

Responsibilities

  • Participate in the full software development lifecycle, from concept and design through testing, integration, and deployment of embedded software for radio and edge communication systems.
  • Design, develop, and maintain embedded firmware using C and Python for microprocessor-based and microcontroller-based systems.
  • Write clean, well-structured, and well-documented embedded C code that adheres to industry best practices and coding standards.
  • Optimize firmware for memory utilization, power efficiency, and real-time performance to ensure reliable operation in constrained environments.
  • Leverage open-source technologies to support continuous integration, automation, and infrastructure management.
  • Build, maintain, and enhance CI/CD pipelines to streamline and automate software delivery and deployment.
  • Develop and maintain automated test frameworks to improve software quality and coverage.
  • Actively participate in code reviews, providing and receiving constructive feedback to maintain high engineering standards.
  • Troubleshoot and resolve issues related to interrupt handling, DMA operations, and peripheral interfaces such as SPI and I2C.
  • Interface directly with hardware peripherals and perform register-level communications and debugging.
  • Collaborate closely with hardware engineers to define interface requirements, integrate embedded software with hardware designs, and validate system functionality.
  • Use Texas Instruments development tools, including Code Composer Studio (CCS), or comparable environments to develop and debug embedded applications.
  • Utilize hardware debugging tools such as oscilloscopes, logic analyzers, multimeters, and JTAG debuggers to diagnose and resolve hardware–software integration issues.
  • Ensure embedded software solutions meet cybersecurity, security, and compliance requirements, aligning with DevSecOps principles where applicable.
  • Apply software architecture principles, including those used in microservices-based environments, to design robust and maintainable systems.
  • Use containerization technologies such as Docker to support development, testing, and deployment workflows.
  • Stay current with emerging technologies, software development methodologies, and industry best practices, and apply them to improve existing systems and processes.
  • Support programs related to defense or government applications, ensuring solutions meet mission-critical performance and reliability standards.

Requirements

  • Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related technical discipline, or equivalent experience.
  • 3–5 years of professional experience developing embedded software in C for microprocessor-based systems.
  • Strong proficiency in Embedded C for firmware development on microcontrollers and microprocessors.
  • Hands-on experience with microcontrollers and bare-metal embedded development.
  • Experience working with SPI and I2C communication protocols and other peripheral interfaces such as UART.
  • Proficiency in Python for scripting and tooling related to embedded development.
  • Proficiency in Bash scripting for automation and development workflows.
  • Experience interfacing with hardware peripherals and performing communications at the register level.
  • Hands-on experience using Texas Instruments development tools, including Code Composer Studio (CCS), or similar embedded development environments.
  • Proficiency with hardware debugging tools such as oscilloscopes, logic analyzers, multimeters, and JTAG debuggers.
  • Experience developing and supporting CI/CD pipelines for embedded or software systems.
  • Familiarity with containerization technologies such as Docker.
  • Understanding of software architecture principles, including those applied in microservices-based environments.
  • Ability to write clean, maintainable,

Similar jobs

Embedded Software Engineer

Kranze Technology Solutions, Inc.Des Plaines, IL· 1 wk ago
Information Technology$80k–$120k/yrapply on kranzetechnologysolutions.applytojob.com

Embedded Software Engineer

Canon Medical Research USA, Inc. (CMRU)Vernon Hills, IL· 2 wk ago
Engineering$97k–$118k/yrapply on workforcenow.adp.com