Software Engineer II - Firmware
Cadence
Job Summary
Cadence is seeking an IP Firmware Development Engineer to develop embedded firmware for high-speed interface IPs such as USB, UCIe, PCIe, and DisplayPort. The role involves maintaining firmware, performing pre-silicon and post-silicon verification, developing test scripts, and collaborating with hardware design teams to optimize interactions. The ideal candidate will have strong C programming skills and hardware knowledge.
Must Have
- Develop and maintain embedded firmware for USB, UCIe, PCIe, and DisplayPort PHY IPs
- Perform pre-silicon and post-silicon firmware verification and validation
- Develop test scripts, automation tools, and GUI using Python
- Collaborate with hardware design teams to optimize firmware-hardware interactions
- Embedded software development experience with C programming
- Programming skills in C, Verilog, Python
- Hardware knowledge: ability to read RTL code, schematics and use hardware analysis tools
- Good English communication and team collaboration skills
Good to Have
- Familiarity with IP firmware development, verification, and validation flow
- Linux driver development or SoC system bring-up experience
Job Description
Position Overview
We are seeking an IP Firmware Development Engineer to develop embedded firmware for high-speed interface IPs including USB, UCIe, PCIe, and DisplayPort.
Key Responsibilities
- Develop and maintain embedded firmware for USB, UCIe, PCIe, and DisplayPort PHY IPs
- Perform pre-silicon and post-silicon firmware verification and validation
- Develop test scripts, automation tools, and GUI using Python
- Collaborate with hardware design teams to optimize firmware-hardware interactions
Required Qualifications
1. Embedded software development experience with C programming
2. Programming skills: C (required), Verilog, Python
3. Hardware knowledge: ability to read RTL code, schematics and use hardware analysis tools
4. Good English communication and team collaboration skills
Preferred Qualifications (Plus)
- Familiar with IP firmware development, verification, and validation flow
- Linux driver development or SoC system bring-up experience
Education
Bachelor's degree or above in Computer Science, Electrical Engineering, or related field