THE ROLE :
AGESA BIOS team at AMD is looking for a firmware developer to join the Data Fabric (AMD Infinity Architecture) team, responsible for developing pre-OS BIOS firmware and silicon initialization code.
AMD Infinity Architecture is the scalable coherent interconnect used across all our product segments including EPYC, Ryzen, Radeon, Semi-Custom products, and Deep Learning solutions.
As part of the role, the BIOS engineer will work closely with other firmware developers and architects across various IPs in designing and implementing X86 and / or ARM firmware that spans pre and post-silicon for all AMD SoCs.
THE PERSON :
Passionate about firmware development on bare-metal or close to bare-metal environment. Need strong problem solving skills, with a collaborative can-do attitude.
Strong knowledge of computer architecture and low-level programming in C with background in UEFI / BIOS firmware.
KEY RESPONSIBILITIES :
Responsible for firmware development and feature enablement in the Data Fabric component, including design, documentation, unit testing and debug for pre and post silicon support.
Work closely with architects and other IP leads to determine firmware scope and implementation details to meet firmware deliverables schedules and milestones
Engage with various teams to provide debug support in the emulation, simulation and post-silicon environment
Work with internal and external teams to ensure highest level of quality and satisfaction throughout firmware lifecycle.
Must be well-organized, technically oriented, and a self-starter with a demonstrated ability to work collaboratively and coordinate activities with geographically distributed technical teams.
Desire to work and succeed on fast-paced and highly dynamic environments
Bachelor’s or Master’s degree (preferred) in Computer Science, Computer Engineering, Electrical Engineering, or equivalent with 5-10 years of experience
PREFERRED EXPERIENCE :
Good understanding of firmware development cycle, integration and verification / validation for pre-si and post-si for SoC designs.
Expertise in low-level C programming & debugging for embedded systems.
Strong background in computer architecture with familiarity in memory interleaving, system memory maps and NUMA domain concepts
Ability to methodically root-cause complex failure mechanisms at the IP, subsystem and / or system level.
Prior experience and / or exposure to testing platforms (Simulation and / or Emulation)
Prior involvement in board, processor, or ASIC bring-up.
Experience in hardware / software interfaces and debugging sophisticated issues in CPU and firmware using JTAG, source code debuggers and other tools.
Experience with source control systems including git / gerrit
Excellent written and verbal communication and presentation skills.