This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
AWS designs custom SoCs (System on Chips) that power the world's largest machine learning training and inference clusters. Our organization builds both the SoCs and the low-level software stack that brings these chips to life — drivers that expose the hardware to the OS, runtime libraries that orchestrate computation, and collective communication software that coordinates thousands of chips working together across a network. We're looking for a Systems Software Engineer who wants to work at the boundary between hardware and software in both pre-silicon and post-silicon, where the problems are hard, the debugging is deep, and the impact is enormous. Our team develops SoC models and infrastructure to enable SoC validation, accelerate system software development, and enable architectural exploration.
Job Responsibility:
Develop and own components of our SoC models, both single-chip and at the datacenter-scale level
Debug complex hardware/software interactions across the full software stack — from register-level bring-up on functional models and emulators, to performance analysis on live silicon
Collaborate with chip architects, RTL designers, modelers, compiler engineers, and ML framework teams to co-design and validate the hardware/software interface
Contribute to the design of hardware features by providing a software perspective early in the chip development cycle
Build tooling, test infrastructure, and automation that accelerates development for yourself and your teammates
Requirements:
6+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
Experience as a mentor, tech lead or leading an engineering team
7+ years of professional experience developing firmware, drivers, runtime software, or low-level systems software for custom hardware (SoCs, ASICs, GPUs, CPUs, FPGAs)
Experience programming in C++, Python, and/or Rust (preference for at least 2)
Knowledge of SoC, CPU, GPU, and/or ASIC architecture and micro-architecture
Nice to have:
Experience with collective communication libraries or distributed systems primitives (MPI, NCCL, RCCL, or similar)
Experience debugging using functional models, QEMU, FPGA, or emulators
Experience with Linux kernel development, device drivers, or bare-metal firmware
Experience building functional or performance models of SoCs
Experience co-designing hardware/software interfaces with architecture or RTL teams
Familiarity with PCIe, DMA engines, on-chip interconnects, or network-on-chip architectures
Experience with performance profiling and optimization of latency-sensitive software
Experience with multi-threaded, multi-process, or asynchronous programming models
What we offer:
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)