The Senior Firmware Engineer will be responsible for the embedded firmware development. This role will include defining communication protocols, debugging firmware and coordinating with the Engineering Department requirements and development of new products.
- Participate in firmware code reviews and create documentation for firmware projects including block diagrams, state diagrams, coding specifications, product descriptions, etc. as mandated by company policies or project requirements.
- Write code for embedded projects in C, C++ and occasionally ASSEMBLY or other applicable languages for use with microprocessors and DSPs. Most projects involve the control and implementation of audio processing elements (Compressors, Routers, Limiters, Delays, etc.). This also includes the following elements:
- Compile code with no errors or warnings in a format appropriate to the design.
- Load, test and debug the code on the target (may require using emulators, simulators, etc).
- Generate all required source and output files to be stored for later reference, modification or replication.
- Sustain existing products by implementing new features/capabilities, interfaces and bug fixing.
- Support or liaise with outside contractors on projects that involve DSP or embedded firmware.
- Perform system analysis, planning, design, development and test of limited-scope projects and/or subsystems.
- Guide or perform the work necessary to resolve complex issues within existing products and portions of new designs.
- Debug prototype hardware.
- Develop improvements to the Firmware development processes and methodologies.
- Assist in the development of test procedures used in production to fully test final assemblies.
- Support legacy code as necessary.
- Assist in the board design process as well as prototype board testing.
- Provide technical mentorship and leadership to Firmware Department and Engineering Department.
- Contribute ideas for new features and directions for future releases.
Requires a minimum of five years experience of hands-on embedded real time operating systems development.
DSP experience desired
Bachelor's Degree or higher in Electrical Engineering or Computer Systems, with courses in Digital Signal Processing
- Proficiency with MS Office (Excel, Word, and Outlook)
- Advanced programming in assembly, C, and C++
- Intermediate knowledge of embedded systems, hardware, and firmware
- Intermediate knowledge of DSP algorithms and programming methods
- Proven history of successful product development from concept to production
- Proficient with oscilloscopes, meters, and other basic lab equipment.
- Must be familiar with compilers, assemblers, linkers, simulators, etc.
- One year ISO 9001 or QS 9000 work environment a plus.
Normal office setting, except when traveling