Innoflight is seeking a Software Engineering Manager to lead, mentor, and manage a team of highly skilled embedded development engineers to tackle challenging technical hardware and software problems.
Requirements
- Expertise in developing low-level control software in C, implementing networking and communication protocols (C/FPGA), and building robust solutions on embedded Linux for aerospace and defense systems
- Expertise in low-level electronic device control software development in C
- Strong ability to analyze complex documents and electrical schematics to develop device drivers for bare-metal and Linux-based systems
- Proficiency in applying logical and scientific principles to solve product development and system integration challenges
- Experience designing and implementing networking and communication protocols in C or FPGA
- Ability to mentor engineers in object-oriented design principles and promote software best practices
- Extensive experience with embedded systems and embedded Linux OS
Responsibilities
- Participate in the design and development of device drivers, bare metal and real-time application software, test and verification, data analysis, software tools development, and other product development tasks
- Set standards and processes for the design, development, documentation, and testing of real-time embedded software for bare metal and RTOS environments
- Manage engineers developing and testing application software that must operate in challenging environmental conditions, ensuring robustness and reliability
- Guide the design of tools and test automation systems for Innoflight’s applications and high-reliability system components
- Establish processes for the development and review of software requirements, designs, code, and components for high-reliability systems
- Lead and manage teams in the design, development, and verification of embedded Linux device drivers and builds for Innoflight products
- Work closely with managers from Hardware, FPGA, and Test Engineering teams to establish and execute processes for creating high-performance computation and networking products
Other
- Hire, train, and manage the Software Engineering team, overseeing job assignments and activities to ensure effective performance
- Collaborate closely with Hardware, Mechanical, FPGA, RF, and PCB engineering teams to foster a multi-disciplinary approach to product development
- Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field (required)
- 10 or more years of software engineering or software development experience, preferably in spacecraft and aerospace & defense environments
- 5 or more years managing embedded engineering teams of 5 or more engineers
- Leadership experience in addressing complex technical hardware/software issues
- Ability to work in the US without sponsorship