> Markdown version of [/jobs/ext/3948264-soc-systems-software-engineer-annapurna-labs-machine-learning-accelerators-aws](https://www.wearedevelopers.com/jobs/ext/3948264-soc-systems-software-engineer-annapurna-labs-machine-learning-accelerators-aws). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # SoC Systems Software Engineer, Annapurna Labs Machine Learning Accelerators, AWS - **Company:** Amazon.com, Inc. - **Location:** Austin, TX, United States - **Experience:** Experienced - **Salary:** $165,200.0 - $223,600.0 - **Contract:** Permanent contract - **Skills:** Amazon Web Services, C++ (Programming Language), Profiling, Software Debugging, Device Drivers, Microprocessors, Distributed Systems, Emulators, Firmware, Field-Programmable Gate Array (FPGA), Python (Programming Language), Linux Kernel, Machine Learning, PCI Express, Quick EMUlator (QEMU), Software Engineering, System Software, Multithreading, Graphics Processing Unit (GPU), Low Latency, Bare Metal, Asynchronous Programming - **Published:** October 27, 2026 - **Apply:** https://www.jobmonkeyjobs.com/career/28133162/Soc-Systems-Software-Engineer-Annapurna-Labs-Machine-Learning-Accelerators-Aws-Texas-Austin-7375 ## About the Role Are comfortable reading hardware specs and translating them into working software - Have debugged problems where the root cause could be in hardware, software, or the interface between them - Have built firmware, drivers, runtime software, or communication libraries for SoCs, ASICs, GPUs, CPUs, or FPGAs - Care about performance and have experience profiling and optimizing latency-sensitive or throughput-critical code paths - Are comfortable in C++ close to the hardware and use Python for tooling and automation - Enjoy working on a small, high-impact team where you own significant pieces of the stack end-to-end Although we are building machine learning chips, no machine learning background is needed for this role. Any ML knowledge required can be learned on the job - what matters is your ability to write great low-level software and reason about hardware., Knowledge of hardware architectures - 2+ 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), 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 - 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 ## Description 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. As part of the ML accelerator systems modeling software team, you will: - 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