Software Engineer, Annapurna Labs, ML Accelerator Systems Firmware

Amazon

Education
Benefits
Qualifications
Skills

DESCRIPTION

Annapurna Labs is at the forefront of hardware/software co-design, not just in Amazon Web Services (AWS) but across the industry. We design and build every component of our hardware and software to create products that our customers use for accelerated computing. If you're interested in the work required to build the highest-performing Machine Learning servers, from inception to delighted customers, Annapurna is a fantastic choice.

We are seeking an experienced Software Development Engineer to join our ML Acceleration Board Firmware team, which is responsible for developing server software to initialize, debug, and monitor ML accelerators in the data center. The team focuses on deploying software to diverse environments, including pre-silicon emulation, hardware manufacturing, automated testing, and production systems used by customers.

Technologies useful to this role include operating systems, computer architecture, and embedded systems. Our team uses C, C++, Lua, bash, Python and other similar languages. Although we use machine learning workloads to validate systems software, this team is focused on codeveloping reliable server software and hardware for customers to deploy their ML workloads at scale.

Key job responsibilities

You will develop software that initializes machine learning accelerators and monitor server health by collecting sensor data, logs, and device metrics.

  • Develop systems software, kernel drivers
  • Define test and automation flows to validate firmware
  • Evaluate and optimize firmware performance
  • Build data collection and aggregation systems at AWS scale
  • Build error detection and recovery mitigation systems at AWS scale

A day in the life

The team is focused on our organization's ability to scale. Automation, software best practices, and good architectural abstractions are key to this endeavor.

You will have the opportunity to develop software in a highly cross-functional environment, working side by side with software and hardware teams to optimize customer experience. You will be responsible for building scalable software systems that can be tested throughout the stages of product development including manufacturing and production. You will leverage automation, continuous integration, and fleet metrics to deploy and monitor your changes.

About the team

Why AWS

Amazon Web Services (AWS) is the world’s most comprehensive and broadly adopted cloud platform. We pioneered cloud computing and never stopped innovating — that’s why customers from the most successful startups to Global 500 companies trust our robust suite of products and services to power their businesses.

Utility Computing (UC)

AWS Utility Computing (UC) provides product innovations — from foundational services such as Amazon’s Simple Storage Service (S3) and Amazon Elastic Compute Cloud (EC2), to consistently released new product innovations that continue to set AWS’s services and features apart in the industry. As a member of the UC organization, you’ll support the development and management of Compute, Database, Storage, Internet of Things (IoT), Platform, and Productivity Apps services in AWS, including support for customers who require specialized security solutions for their cloud services.

Inclusive Team Culture

Here at AWS, it’s in our nature to learn and be curious. Our employee-led affinity groups foster a culture of inclusion that empower us to be proud of our differences. Ongoing events and learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences, inspire us to never stop embracing our uniqueness.

Work/Life Balance

We value work-life harmony. Achieving success at work should never come at the expense of sacrifices at home, which is why we strive for flexibility as part of our working culture. When we feel supported in the workplace and at home, there’s nothing we can’t achieve in the cloud.

Mentorship and Career Growth

We’re continuously raising our performance bar as we strive to become Earth’s Best Employer. That’s why you’ll find endless knowledge-sharing, mentorship and other career-advancing resources here to help you develop into a better-rounded professional.

Diverse Experiences

Amazon values diverse experiences. Even if you do not meet all of the preferred qualifications and skills listed in the job description, we encourage candidates to apply. If your career is just starting, hasn’t followed a traditional path, or includes alternative experiences, don’t let it stop you from applying.

BASIC QUALIFICATIONS

  • 3+ years of non-internship professional software development experience
  • 2+ years of non-internship design or architecture (design patterns, reliability and scaling) of new and existing systems experience
  • Experience programming with at least one software programming language

PREFERRED QUALIFICATIONS

  • 3+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
  • Bachelor's degree in computer science or equivalent

Amazon is an equal opportunity employer and does not discriminate on the basis of protected veteran status, disability, or other legally protected status.

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.

Read Full Description
Confirmed 20 hours ago. Posted 21 hours ago.

Discover Similar Jobs

Suggested Articles