Taro Logo

C/C++ Hardware / Software Co-Design SDE, Machine Learning Acceleration Systems

Annapurna Labs leads hardware/software co-design innovation within AWS, designing custom silicon solutions for machine learning acceleration.
$129,300 - $223,600
Embedded
Mid-Level Software Engineer
In-Person
5,000+ Employees
3+ years of experience
AI · Hardware

Job Description

Annapurna Labs, an Amazon Web Services (AWS) company, is seeking an experienced C/C++ engineer to join their embedded software team. This role focuses on developing bare metal firmware for neural network model execution on custom ASIC-based ML Accelerator chips. The position offers a unique opportunity to work at the intersection of hardware and software, collaborating with architecture and design teams to co-develop firmware and custom hardware enabling machine learning acceleration.

The team operates with startup agility while backed by Amazon's resources, working on cutting-edge technology to democratize access to industry-leading ML infrastructure. No prior ML knowledge is required, as training will be provided during onboarding. The role involves working with thought-leaders across multiple technology areas, maintaining high standards, and constantly seeking ways to improve product performance, quality, and cost.

The position offers competitive compensation ranging from $129,300 to $223,600 per year, depending on geographic location, plus additional benefits including equity and comprehensive medical coverage. This is an excellent opportunity for engineers interested in hardware/software co-design and machine learning acceleration systems, working on innovative solutions that will shape the future of AI acceleration at AWS.

The role combines deep technical work with collaborative team engagement, requiring both strong C/C++ programming skills and the ability to work effectively with various engineering teams. You'll be involved in the entire development lifecycle, from pre-silicon development through post-silicon implementation, making this an ideal position for someone who wants to impact the future of machine learning infrastructure.

Last updated a month ago

Responsibilities For C/C++ Hardware / Software Co-Design SDE, Machine Learning Acceleration Systems

  • Software / hardware architecture and co-design
  • Bare metal C/C++ software development, testing, debug, and performance improvements
  • Test suite and infrastructure development
  • Developing maintainable, documented, and reusable software
  • Close collaboration with RTL designers, design verification engineers, other software teams and customers

Requirements For C/C++ Hardware / Software Co-Design SDE, Machine Learning Acceleration Systems

  • 3+ years of non-internship professional software development experience
  • 2+ years of non-internship design or architecture experience
  • Experience programming with at least one software programming language
  • Experience with C/C++ programming

Benefits For C/C++ Hardware / Software Co-Design SDE, Machine Learning Acceleration Systems

Medical Insurance
401k
  • Medical Insurance
  • 401k