Lead Embedded Software Engineer

AERONIX INCMelbourne, FL
23hOnsite

About The Position

We are seeking a skilled Lead Embedded Software Engineer to design, develop, and integrate software for embedded systems. This role covers the full development lifecycle with a strong emphasis on testing and validation to ensure functionality and reliability. The ideal candidate will have strong technical expertise, excellent communication skills, and the ability to present and explain software solutions to internal teams and customers.

Requirements

  • Experience leading small teams and working in a cross-functional environment.
  • Strong proficiency in C/C++/Python programming for embedded Linux or RTOS environments.
  • Experience integrating software with custom processor-based circuit card assemblies.
  • Working knowledge of other programming languages, including C#.
  • Experience in requirements development and management.
  • Familiarity with formal verification procedures.
  • Ability to work effectively in a team environment on projects with a large number of requirements.
  • Bachelor’s Degree and a minimum of 8 years of relevant experience; or Graduate Degree with at least 7 years of related experience.
  • Proficient programming skills in embedded C/C++ and Python.
  • Excellent written and verbal communication skills.
  • Strong attention to detail, systematic approach, and problem-solving ability.
  • Experience creating required engineering documentation.
  • Hands-on experience with integration and verification testing of electronic equipment via software.
  • Understanding of microcontrollers, including requirements, constraints, and capabilities.
  • Willingness to learn and embrace challenging tasks.
  • Familiarity with writing test scripts.
  • US Person required.
  • Ability to obtain and maintain a DoD Secret clearance (active Interim Secret or Secret clearance preferred).

Nice To Haves

  • Linux device driver development
  • Bare-metal programming, register-level configuration/setup software
  • Device driver development for UARTs, I²C, Ethernet, Serial RapidIO and similar interfaces
  • Tool Suite: JIRA, Confluence, Bitbucket (Git), Bamboo, Jenkins, VsCode, Visual Studio
  • Model-based development using MATLAB/Simulink
  • Demonstrated leadership ability to lead small working groups
  • Knowledge of messaging protocols within the OSI 7-layer stack

Responsibilities

  • Lead a small team of software engineers to manage work in Agile sprint-style workflows.
  • Perform full lifecycle development for embedded systems, including implementation, unit testing, and integration.
  • Review customer requirements, translate them into specifications, and produce technical documentation, designs, and operational concepts.
  • Collaborate closely with hardware engineers to ensure seamless integration of software with electronic components and boards.
  • Develop and execute test plans and procedures; perform debugging, troubleshooting, and ensure compliance with functional specifications.
  • Conduct design and code reviews, resolve defects, and adhere to established development processes, configuration management, and release practices.
  • Work under technical leadership while demonstrating initiative and self-direction.
  • Design and implement software for real-time operating systems (RTOS) with strict timing constraints.
  • Develop low-level device drivers and support component-level integration.
  • Support automated build and test pipelines for embedded software.
  • Present and explain software designs and solutions to internal teams and customers.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service