Set the standard for how the team tests and continuously deploys the software stack to internal customers, including pre-silicon and hardware-in-the-loop flows.
Make durable, well-reasoned technical tradeoffs and drive cross-team decisions that span hardware, firmware, and higher-layer system software.
Mentor and coach other engineers, lead design and code reviews, and act as a technical lead for architecture and engineering best practices.
A day in the life
A typical day moves between writing and reviewing C++ for the HAL, working through a hardware interface question with an RTL or design verification engineer, and shaping the architecture for a block still being designed. You might debug a failure spanning software and silicon, then define the abstractions a new chip will need. Your stakeholders are the hardware design, verification, firmware, and system-software teams; your customers are the internal software teams that rely on the HAL to boot, configure, and debug the chip. Problems range from talking to brand-new hardware to scaling the stack across chip generations.
About the team
Annapurna Labs designs and deploys some of the largest custom silicon in the world, including the Trainium and Inferentia machine learning accelerators. Our SoC HAL team builds the low-level software that boots, configures, and manages these chips, sitting between the hardware and the system software that runs the server. We are a small team that works closely with hardware, holds a high engineering bar, and gives engineers real ownership to shape the architecture they build. Split between Cupertino, CA and Austin, TX with no site preference, we value mentorship, clear written design, and software that outlasts any single chip.
5+ years of programming with at least one software programming language experience
5+ years of leading design or architecture (design patterns, reliability and scaling) of new and existing systems experience
5+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
Experience as a mentor, tech lead or leading an engineering team
Experience with modern C++ programming including object-oriented design.
Bachelor's degree in computer science or equivalent
Knowledge of computer architecture, operating systems, and parallel computing
Experience in hardware/software co-design
Experience with hardware-in-the-loop testing
Expertise in one or more of PCIe, HBM or DDR memory, UCIe, DMA engines, chip boot and reset sequences
Experience defining software architecture across multiple components or teams
Experience developing device drivers, HAL, or other low-level software that directly interacts with hardware
Amazon is an equal opportunity employer and does not discriminate on the basis of protected veteran status, disability, or other legally protected status.
Los Angeles County applicants: Job duties for this position include: work safely and cooperatively with other employees, supervisors, and staff; adhere to standards of excellence despite stressful conditions; communicate effectively and respectfully with employees, supervisors, and staff to ensure exceptional customer service; and follow all federal, state, and local laws and Company policies. Criminal history may have a direct, adverse, and negative relationship with some of the material job duties of this position. These include the duties and responsibilities listed above, as well as the abilities to adhere to company policies, exercise sound judgment, effectively manage stress and work safely and respectfully with others, exhibit trustworthiness and professionalism, and safeguard business operations and the Company’s reputation. Pursuant to the Los Angeles County Fair Chance Ordinance, we will consider for employment qualified applicants with arrest and conviction records.
Our inclusive culture empowers Amazonians to deliver the best results for our customers. If you have a disability and need a workplace accommodation or adjustment during the application and hiring process, including support for the interview or onboarding process, please visit https://amazon.jobs/content/en/how-we-hire/accommodations for more information. If the country/region you’re applying in isn’t listed, please contact your Recruiting Partner.
The base salary range for this position is listed below. Your Amazon package will include sign-on payments and restricted stock units (RSUs). Final compensation will be determined based on factors including experience, qualifications, and location. Amazon also offers comprehensive benefits including health insurance (medical, dental, vision, prescription, Basic Life & AD&D insurance and option for Supplemental life plans, EAP, Mental Health Support, Medical Advice Line, Flexible Spending Accounts, Adoption and Surrogacy Reimbursement coverage), 401(k) matching, paid time off, and parental leave. Learn more about our benefits at https://amazon.jobs/en/benefits.
USA, CA, Cupertino - 193,300.00 - 261,500.00 USD annually
USA, TX, Austin - 168,100.00 - 227,400.00 USD annually