Software Development Engineer , Annapurna Labs
Overview
In this role you will develop low-level software that runs close to hardware, enabling high performance and reliability for AWS at scale. You’ll collaborate with hardware teams to bring up new silicon and shape system architecture for next-gen features. Your work spans drivers, firmware, and hardware abstractions, with a focus on performance and efficiency. This is a deeply technical path that blends hardware and software to power cloud workloads with impact across millions of customers.
ResponsibilitiesDesign, develop, and optimize low-level software including device drivers, firmware, and hardware abstraction layersCollaborate with hardware design teams to define interfaces and bring-up new siliconWrite performance-critical systems software in C/C++ under strict latency/resource constraintsDebug complex hardware-software interactionsContribute to system architecture decisions and software design patterns for next-gen chip featuresDevelop and maintain automated test frameworks to validate functionality and performance at scaleParticipate in code reviews and promote engineering best practices
Key requirements5+ years of non-internship professional software development experience2+ years of non-internship design or architecture experience for new and existing systemsExperience programming with at least one software programming languageBachelor's degree in Computer Science, Engineering, Mathematics, or a related fieldDebugging mindsetCuriosity about how systems work at the lowest levelCollaboration and willingness to pair with othersC/C++ programmingEmbedded developmentDevice drivers, firmware, hardware abstraction layers