Sr. SDE C/C++ Hardware/Software Co-Design, Machine...
Role details
Job location
Tech stack
Job description
At the heart of AWS Machine Learning servers reside our custom Amazon-designed silicon that powers next-generation machine learning capabilities for our customers. We're seeking an experienced C/C++ engineer to join our embedded software team, where you'll develop bare metal firmware that drives neural network model execution across our custom ASIC-based ML Accelerator chips.
Working at the intersection of hardware and software, you'll collaborate closely with our architecture and design teams to design and implement firmware and custom hardware that enables machine learning within our accelerator chips. Our mission is ambitious: to democratize access to industry-leading ML infrastructure and make deep learning capabilities accessible to everyday software developers. From the ground up, you'll help design and build the foundation that makes this vision possible.
the Annapurna Labs team operates with the agility and culture of a startup, but with the full weight of Amazon behind us and we invite you visit the link below for a glimpse inside our labs to see exactly the incredible technology and people you will work with at Annapurna Labs!
https://www.aboutamazon.com/news/aws/take-a-look-inside-the-lab-where-aws-makes-custom-chips
This is a fast-paced, challenging position, 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 our products' performance, quality, and cost. We're searching for individuals who want to reach beyond what is possible today and change an industry.
No prior ML knowledge is required for this role and you will learn about the inner workings of ML and our custom ML accelerators as part of your onboarding.
Key job responsibilities
-
Applying Software/Hardware co-design principles
-
Embedded software design, implementation, testing, debugging and performance improvements
-
Test suite and infrastructure design
-
Owning the design and final implementation of maintainable, documented and well tested software
-
Close collaboration with RTL designers, design verification engineers, and other software teams
-
Mentoring of software engineers on best practices, computer architecture and software design choices
Requirements
7+ years of non-internship professional software development experience
-
7+ years of programming with at least one software programming language experience
-
7+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
-
5+ years of leading design or architecture (design patterns, reliability and scaling) of new and existing systems experience
-
Experience as a mentor, tech lead or leading an engineering team
Preferred Qualifications
-
Bachelor's degree in computer science or equivalent
-
Experience writing firmware or bare metal software using C/C+- Experience in Hardware/Software co-design
-
Experience with Hardware-In-The-Loop testing
-
Background in Computer Architecture and Design
Benefits & conditions
The base salary range for this position is listed below. Your Amazon package will include sign-on payments and restricted stock units (RSUs). Final compensation will be determined based on factors including experience, qualifications, and location. Amazon also offers comprehensive benefits including health insurance (medical, dental, vision, prescription, Basic Life & AD&D insurance and option for Supplemental life plans, EAP, Mental Health Support, Medical Advice Line, Flexible Spending Accounts, Adoption and Surrogacy Reimbursement coverage), 401(k) matching, paid time off, and parental leave. Learn more about our benefits at https://amazon.jobs/en/benefits .
USA, CA, Cupertino - 193,300.00 - 261,500.00 USD annually
USA, TX, Austin - 168,100.00 - 227,400.00 USD annually