Staff Embedded Software Firmware Engineer Bringup
You will develop C and C++ code to bring up and validate new AI chips and platforms. You will configure and exercise systems on FPGA, emulators, and first silicon, develop Python test automation, analyze failures, collaborate across engineering disciplines, improve validation infrastructure, and provide technical guidance to other engineers.
Responsibilities
- Plan, design, develop, and debug silicon bringup sequences and tests in bare-metal C/C++ on FPGA and emulators
- Deploy configuration sequences and validation tests on first silicon
- Develop automated test frameworks and Python regression suites
- Collaborate with engineers from multiple disciplines
- Implement best practices and continuous improvements to test methodologies
- Analyze test results and identify and debug failures and defects
- Contribute to shared test and validation infrastructure
- Provide feedback to architects
- Lead, mentor, and provide technical guidance to engineering team members
Requirements
- Strong experience in bare-metal or embedded C/C++
- Good knowledge of digital ASICs
- Experience with post-silicon validation in digital ASIC environments
- Python and Linux experience
- Ability to work across teams and programming languages to find root causes of complex issues
- Experience with PCIe, Ethernet, memory technologies, or peripherals such as I2C, I3C, and SPI is desirable
- Knowledge of mixed-signal building blocks such as PLLs and high-speed PHYs is desirable
- Experience with Arm CPUs, System IP, and debug tools is desirable
- Experience with AMBA protocols is desirable
- Understanding of machine learning applications and workloads is desirable
- Experience in characterization, failure analysis, test development, statistical analysis, or customer support is desirable
Benefits
- Competitive benefits package