HCLTech→
Technical Lead - Embedded C Development at HCLTech · Shanghai
Skills
Job Description
Job Summary
Responsible for Firmware configuration and maintenance for new and existing products: • Target creation for new products in our code bases • Firmware maintenance to adapt for new products, features and requirements • 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 • Support FA activity onsite in the factory which includes reproducing issues at stations or in the factory labs, capturing additional debug info such as logs and signal traces, and testing/validating EBs. 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
Key Responsibilities
Firmware development, triage issues and provide fix
Skill Requirements
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 2 • 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, SPI, USB, etc • Ability to understand schematics • Good multitasking capabilities to handle frequent context switches • Travel to factory for build support 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 • USB driver development experience
Other Requirements
null