Embedded Software Engineer

Position Details:

Embedded Software Engineer who will develop, modify and maintain customized or standardized applications using software engineering best practices and standards, and participate in the full life-cycle of software development, to include requirements development, modeling and design, application development, unit to CSCI testing, integration, formal system testing, release, installation, and maintenance.


  • Develop and integrate software for existing embedded systems
  • Full Lifecycle design, implementation, and unit testing of software
  • Develop SW products from all phases of SW life cycle.
  • Review customer requirements and specification for developing software and hardware solutions
  • Produce and/or review technical documents, specifications, and standards.
  • Review of software requirements against specific criteria.
  • Analyzing project requirements to translate into specifications and programming deliverables.
  • Works under direction of technical leadership with some expected self-direction.
  • Utilizing internal processes and tools for the development of software.
  • Review, develop and document software level operational concepts.
  • Prepare and/or review documentation for software designs and architectures in accordance with established software development processes and procedures.
  • Perform system/product integration.
  • Verify and validate aspects of software designs to ensure conformance with functional specifications and customer requirements.
  • Conduct design and code reviews and other defect prevention activities
  • Actively participate in code reviews
  • Design and promote new components and sub-processes
  • Participate in activities related to software debugging and issue resolution
  • Execute code integration, configuration management, and release processes
  • Candidate must be able to conduct incremental component level testing and integration of product functionality.
  • Creating Test Plans and Procedures that acknowledge technical and schedule constraint. Executing Test Procedures to ensure requirements compliance.
  • Performing troubleshooting as required.
  • Resolve defects and perform Component to Component Integration.
  • Develop device drivers for embedded Linux using C Language


    • Experience with embedded Linux
    • Experience with C Linux Kernel level development and debug
    • Experience with integrating software with custom processor-based circuit card assemblies.
    • Working knowledge of high-order programming languages (C, C++, Python).
    • Experience with development and management of requirements.
    • Experience with development of formal verification procedures.
    • Experience with any of the following is a plus, but not required:

      • C - Lower-level software development
      • Embedded C
      • Embedded C++
      • Python
      • Shell
      • Version Control Systems: SVN, Git, Mercurial, etc
      • Linux-based Environment
      • Register-level configuration/setup software
      • Device driver software for UARTs, I2C, etc device drivers
      • Tool Suite: JIRA, Confluence, BitBucket (GIT), Bamboo, Jenkins
      • Proficient model-based development with Matlab/Simulink
    • Demonstrated leadership ability to lead small working groups.
    • Candidates should possess strong communication skills both written and oral.
    • Experience with wireless protocols a plus
    • Experience with software defined radios a plus



      • Bachelor’s Degree and minimum 4 years of prior relevant experience; or Graduate Degree and a minimum of 2 years of prior related experience
      • 2+ years of experience in C++
      • 2+ years of experience with embedded Linux
      • Software Development: 5 years (Preferred)
      • Proficient programming skills with embedded C/C++ and Python
      • Excellent communication skills, written and verbal
      • Systematic approach, attention to detail, and good problem-solving skills
      • Experience in creating required engineering documentation.
      • Experience in integration and verification testing of electronic equipment via software.
      • Understanding of Microcontrollers and related requirements, constraints, and capabilities
      • A willingness to learn and desire to be challenged
      • Experience developing software / writing code in C/C++
      • Experience integrating and testing software subsystems into systems
      • Should be familiar with writing Test Scripts
      • Experience in scripting language such as python
      • Should be familiar with Atlassian tool suite with add-ons like git and confluence
      • Should be familiar with Agile SW development process
      • Should be familiar with Hardware Software Compatibility matrix process
    • US Person Required
    • Position does not require a clearance to start however, it does require the ability to obtain and maintain a DoD Secret level clearance
    • An active DoD Interim Secret or Secret level clearance is preferred

    For more information on this opportunity, please contact us.

    Contact Aeronix

    What are you looking for?