Expoint - all jobs in one place

The point where experts and best companies meet

Limitless High-tech career opportunities - Expoint

Amazon SoC Device Driver Engineer Machine Learning Accelerators 
United States, California, Cupertino 
760822592

12.06.2024
DESCRIPTION

As the lead for the SoC driver team, you will:- Work with hardware designers to write drivers for newly developed hardware modules
- Refactor and maintain existing codebases throughout the device lifecycle- Innovate on the tooling you provide to customers, making it easier for them to use and debug our SoCsAnnapurna Labs, our organization within AWS, designs and deploys some of the largest custom silicon in the world, with many subsystems that must all be managed, tested, and monitored. The SoC drivers are a critical piece of the AWS management software stack that ensure the chip is functional, performant, and secure.You will thrive in this role if you:- Are familiar with modular driver architectures (such as the Linux or Windows driver stacks)
- Are proficient in C++ and familiar with Python
- Know how to build effective abstractions over low-level SoC details
- Have strong opinions about software architecture, and are able to apply them effectively
This is a fast-paced role where you'll work with thought-leaders in multiple technology areas. You'll have high standards for yourself and everyone you work with, and you'll be constantly looking for ways to improve your software, as well as our products' overall performance, quality, and cost.


BASIC QUALIFICATIONS

- 6+ years of programming with at least one modern language such as C++, C#, Java, Python, Golang, PowerShell, Ruby experience
- 6+ years of non-internship professional software development experience
- 4+ years of designing or architecting (design patterns, reliability and scaling) of new and existing systems experience
- Experience leading the design, build and deployment of complex and performant (reliable and scalable) software solutions in production
- C++ development experience
- Experience developing low-level software for hardware (SoC, ASIC, GPU, CPU, etc.)