Analyze new product functional requirements to determine required data structures and behaviors
Work with the design and system team to help devise algorithms for various applications
Architect the firmware structure to meet the functional requirements specified
Create written documentation for firmware
Design and implement firmware modules using C, C++, assembly level software, and standard design patterns and techniques.
Support ATE (automated test equipment) specific extension firmware loads with the goal of improving test time, test stability, test coverage and general control and observability of the device under test.
Define test cases and write test automation which effectively validate module design
Implement drivers and validation test suites for new custom mixed signal hardware
Work with the Development Team to ensure interoperability between firmware components and hardware
Work with Design, Validation, Test and Applications Engineering to investigate and correct reported system behavioral abnormalities
Qualifications and Abilities
The ideal candidate will have experience with the 8051 processor platform as well as more advanced 32 bit RISC processors (ARM, ARC).
Nice to have experience in embedded firmware development for datacom / telecom applications.
2+ years of commercial embedded firmware development experience.
Embedded programming, C / C++
Working knowledge of Python
Experience with real-time operating systems
Ability to understand hardware block diagrams and schematics
Ability to troubleshoot, test, and debug
Knowledge of ATE equipment (eg. Advantest V93000) is an asset
Experience in the development of datacom / telecom applications, or enough technical understanding to be able to learn :
hardware architectures (read and understand hardware block diagram / schematic / data sheet / register maps)
software architectures (Drivers, middleware)
Debugging and troubleshooting of embedded systems
Implementation of multithreaded applications (understanding of inter-process communication)
Bachelor or Masters Degree in Electrical Engineering or Computer Science
Master’s degree preferred