About the job
Annapurna Labs designs silicon and software that accelerates innovation. Customers choose us to create cloud solutions that solve challenges that were unimaginable a short time ago—even yesterday. Our custom chips, accelerators, and software stacks enable us to take on technical challenges that have never been seen before, and deliver results that help our customers change the world.
In Annapurna Labs we are at the forefront of hardware/software co-design not just in Amazon Web Services (AWS) but across the industry. The Machine Learning Acceleration Fleet Operations Team is looking for candidates interested in diving deep into our fleet of ML servers deployed around the world.
We are seeking an engineer who is comfortable debugging emergent problems in GPU and server hardware, writing scripts in languages such as Python or Bash, running large scale experiments on a fleet of complex hardware, developing data infrastructure and analyzing trends, and developing automation software to scale operations.
Our team has end to end ownership of some of the most advanced server hardware in the world. We drive technical debug efforts and write truly massive scale autonomous software to monitor, optimize, and remediate machine learning hardware. Come join us!
Responsibilities
Member of a team responsible for system remediation, operational excellence, and customer experience on bleeding edge ML products
Utilize data to root cause hardware failures and identify live trends on the most complex systems in AWS
Implement and improve system level testing across the product lifecycle
Develop software which can be maintained, improved upon, documented, tested, and reused
Dive deep on issues at the intersection of hardware and software
Qualifications
Minimum
2+ years of non-internship professional software development experience
1+ years of designing or architecting (design patterns, reliability and scaling) of new and existing systems experience
1+ years of administrative experience in networking, storage systems, operating systems and hands-on systems engineering experience
Knowledge of systems engineering fundamentals (networking, storage, operating systems)
Experience programming with at least one modern language such as C++, C#, Java, Python, Golang, PowerShell, Ruby
Experience with Linux/Unix
Experience debugging and systems analysis to identify and quickly resolve or mitigate issues
Bachelor's degree in Computer Science, Computer Engineering, or Electrical Engineering
Preferred
4+ years of hardware design and validation of components, subsystems and systems experience
Experience with post-silicon validation
Master's degree in Computer Science, Computer Engineering, or Electrical Engineering