Job description:
Firmware configuration and maintenance for new product bringup:
• Target creation for new products in our code bases
• Firmware maintenance to adapt for new products
• Firmware validation to ensure operability on new products
• Firmware environment is C and similar to the open source EDK2 code base
Firmware builds and releases:
• Perform daily builds as needed for product builds
• Publish release notes about release availability and changes
Issue triage and resolution or escalation:
• Screen all incoming issues related to product
• Initial triage, debug and resolution of straightforward issues updating code base as needed
• Escalate more major issues to internal developers as needed
• Prioritize and escalate any issues that have potential to block an upcoming build
• Document all issue activity in a timely manner
Test script adaptation and maintenance:
• Support factory test stations and factory related teams with test script maintenance as needed
• Create new scripts to support new testing requirements as needed
• Scripting is typically done in Lua or Python
Cross-functional communication and reporting including daily meetings with China factory teams during build prep:
• Be primary point of contact for cross-functional team communication
• Primary teams we interact with include factory build teams, factory test stations, electrical
engineering teams, other device firmware teams, and program management
• Attend and provide status at daily build prep meetings for several weeks prior to the start of a build
• Prioritize and escalate any Diags issues that have potential to block builds
Qualifications
• Engineering experience: 2-5 years
• BS Computer Engineering or relevant work experience (MS is a plus)
• Low level embedded C firmware experience and its interaction with hardware
• Effective communication skills
• Software development experience is desired
• Good debug skills
• Python and/or Lua scripting experience
• Ability to drive issues, track tasks, and evaluate priorities on a regular basis
• Understanding of hardware design and familiarity with various protocols such as i2c, USB, etc
• Ability to understand schematics
• Good multitasking capabilities to handle frequent context switches
Nice to have:
• Any exposure to UEFI or EDK2
• Familiar with Git or other source control systems
• Exposure to working with contract manufacturers
• MacOS and iOS knowledge and experience