Job Description
The Embedded Software Engineer will apply their knowledge of RTCA DO-178C, best practices for real-time safety-critical embedded software development, and embedded C skill set to specify, architect, design, implement and integrate the embedded software. The ideal candidate will have a broad knowledge of embedded software development, from bare-metal board bring-up and understanding of microcontroller timing and execution characteristics to high-level software specification and design methods and techniques. The embedded software engineer is responsible for developing robust and reliable software to achieve the highest level of safety-criticality in the industry.
How you will contribute to revolutionizing electric aviation:
- Analyze system requirements allocated to software for correctness, feasibility, and appropriateness from an embedded software perspective
- Develop software high-level requirements to specify the functionality and characteristics of airborne software
- Architect and design the embedded software, considering hardware constraints, design constraints, and available resources to satisfy the software high-level requirements, and specify software low-level requirements
- Develop embedded software in the C and Assembly programming languages for ARM microcontroller targets
- Integrate the software with other software and the target hardware
- Assess, measure, troubleshoot, and resolve issues with software execution and characteristics such as timing and performance
- Perform peer reviews of other team member’s contributions to the software development project
- Inform the software verification team for the appropriate testing and analysis of the embedded software
Minimum Qualifications:
- BS in Computer Engineering, Electrical Engineering, Computer Science, or a related degree from an accredited university
- Minimum 3 years experience in real-time embedded software development
- Requirements for engineering and software architecture/design experience
- Proficiency with the C programming language
- Knowledge of Texas Instruments Hercules and/or STM ARM microcontrollers, or equivalent
- Comfortable reading electrical schematics, technical documentation, reference manuals, and datasheets
- Experience with electronics lab equipment such as programmable power supplies, signal generators, oscilloscopes, and bus analyzers
- Knowledge and awareness of the activities and outputs required for DO-178C compliance
- Good team communication and collaboration skills
- Ability to work independently and as a member of an integrated team
Above and Beyond Qualifications that will distinguish you:
- Experience with the Texas Instruments TMS570 ARM microcontroller
- Experience with the Lauterbach TRACE32 debug/instruction trace system
- Experience with GNU GCC ARM embedded toolchain and Texas Instruments Code Composer Studio
- Experience with the Polarion ALM life cycle data management system
- Experience with embedded software for electric motor control, battery management systems, and/or flight control systems
- Knowledge of and experience with communications interfaces and devices such as SPI, I2C, CAN, ARINC 429, Analog-to-Digital Converters, Direct Memory Access controllers, and temperature, voltage, and current sensors
- Familiarity with RTCA DO-330 tool qualification objectives, activities, and outputs
- Familiarity with RTCA DO-331 model-based development objectives, activities, and outputs