Expoint - all jobs in one place

The point where experts and best companies meet

Limitless High-tech career opportunities - Expoint

Amazon Senior Systems Software Engineer Team Lead 
United States, California, Cupertino 
398476859

20.11.2024
DESCRIPTION

AWS Machine Learning servers (TRN and INF) are essentially supercomputers, with both hardware and software built entirely from the ground-up within our organization. We’re looking for someone to lead our SoC (System on Chip) Hardware Abstraction Layer (HAL) team, responsible for directing the team both technically and managerially. You’ll work to understand our in-house SoC and build effective software that abstracts out the details for higher layers of the software stack.You’ll work closely with chip architects, designers, verification engineers, and fellow software engineers to shape our next-generation of Machine Learning acceleration. You’ll effectively manage, coach, and direct your team to execute on this vision alongside you. This is a hands-on, in-the-trenches software engineering leadership position.As the team lead, you will:- Work with hardware designers to write software to boot and manage newly developed SoC IPs
- Work with other system software teams to solve SoC and system-level architectural issues, drive debug, and innovate on cross-functional solutions
- Improve-upon existing codebases throughout the device lifecycleAnnapurna Labs, our organization within AWS, designs and deploys some of the largest custom silicon in the world, with many subsystems that all must be managed, tested, and monitored. The SoC HAL is a critical piece of the AWS infrastructure management software stack that ensures the chip is functional, performant, and secure.You will thrive in this role if you:- Are proficient in C++ and familiar with Python
- Love solving complex system-level issues
- Know how to build effective abstractions over low-level SoC details
- Have strong opinions about software architecture, and are able to apply them effectively


BASIC QUALIFICATIONS

- 10+ years of professional software development experience
- 10+ years of programming with at least one modern language such as C++ or Python
- 2+ years of C++ development experience
- 4+ years of designing or architecting (design patterns, reliability, and scaling) new or existing systems
- Experience leading the design, build, and deployment of complex and performant (reliable and scalable) software solutions into production
- Experience developing software for hardware (SoC, ASIC, GPU, CPU, etc.)