Loading...

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. DESCRIPTION

  • 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

    SKILLS

    • 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

     QUALIFICATIONS

    •  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?

    CLOSE