Are you the type of engineer who thrives at the intersection of hardware and software? We're seeking passionate software engineers who love writing low-level C/C++ code for embedded systems, SOCs, and microcontrollers. Our ideal candidate is a software engineer at heart but possesses a deep understanding of the hardware architecture their code will run on - someone who understands that every bit of data moved and every cycle of the clock matters.
Custom Amazon designed silicon chips live at the heart of AWS Machine Learning servers, enabling faster, more capable, and more accurate machine learning for our customers. We’re looking for skilled software engineers to scale the team that develops the embedded software stack critical to the functionality of these bleeding-edge system-on-chips (SoCs). Your software will directly drive the execution and management of hardware accelerated neural network models deep within the SOC's Neuron Cores.
You'll also work closely with our architecture and design teams to drive hardware/software co-design, developing both firmware and custom hardware that enables ML within our accelerator chips. Our team's charter is to make deep learning pervasive for everyday software developers and to democratize access to industry leading infrastructure - you'll be enabling that vision from the ground up.
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.
You'll learn about the inner workings of ML and our accelerators as part of your onboarding, so no prior ML knowledge is required for this role, but any ML background you have will be helpful.
Key job responsibilities
- Software / hardware architecture and co-design
- Embedded software development, testing, debug, and performance improvements
- Test suite and infrastructure development
- Developing software which can be maintained, improved upon, documented, tested, and reused
- Close collaboration with RTL designers, design verification engineers, and other software teams