Skip to main content

Principal Software Engineer, ENA

Job ID: 2698752 | Annapurna Labs Ltd.

DESCRIPTION

AWS Utility Computing (UC) provides product innovations — from foundational services such as Amazon’s Simple Storage Service (S3) and Amazon Elastic Compute Cloud (EC2), to consistently released new product innovations that continue to set AWS’s services and features apart in the industry. As a member of the UC organization, you’ll support the development and management of Compute, Database, Storage, Internet of Things (Iot), Platform, and Productivity Apps services in AWS. Within AWS UC, Amazon Dedicated Cloud (ADC) roles engage with AWS customers who require specialized security solutions for their cloud services.

The Elastic Network Adapter (ENA) group at Annapurna Labs, Amazon Web Services, is responsible for developing and maintaining the firmware and network drivers for custom-built network interface controller (NIC) designed for high performance and low latency networking in the cloud. ENA is a critical component of Amazon's cloud infrastructure, enabling efficient and reliable network communication for various AWS services and customer workloads. ENA firmware is part of Network Express (NX) firmware running on the Nitro card and implements AWS VPC networking.

ENA firmware is responsible for network interfaces’ management, hardware resources configurations, hardware network acceleration settings, packet processing, and interfacing with the host operating system and virtualization layers.

The Principal Software Engineer for ENA Firmware would be responsible for the end-to-end ownership of the ENA firmware codebase, driving its evolution, and ensuring its high-quality and performance to meet the demanding networking requirements of AWS's cloud infrastructure.

Key job responsibilities
A Principal Software Engineer (PE) in the ENA firmware team, would own and lead the development, optimization, and maintenance of the ENA firmware codebase, including:
1. Architecting and designing firmware components for efficient hardware resources management, packet processing, and driver interfaces
2. Implementing and optimizing firmware features to improve performance, scalability, and reliability of ENA
3. Collaborating with hardware teams to ensure seamless integration with next-gen Nitro cards
4. Mentoring and coaching a team of software and firmware engineers, providing technical guidance, and driving best practices in firmware development
5. Engaging with internal and external customers to understand their networking requirements and translate them into features and enhancements
6. Staying up-to-date with industry trends, emerging networking technologies, and relevant standards to ensure the ENA remains competitive and future-proof

About the team
*Diverse Experiences
Amazon values diverse experiences. Even if you do not meet all of the preferred qualifications and skills listed in the job description, we encourage candidates to apply. If your career is just starting, hasn’t followed a traditional path, or includes alternative experiences, don’t let it stop you from applying.
*Why AWS
Amazon Web Services (AWS) is the world’s most comprehensive and broadly adopted cloud platform. We pioneered cloud computing and never stopped innovating — that’s why customers from the most successful startups to Global 500 companies trust our robust suite of products and services to power their businesses.
*Work/Life Balance
We value work-life harmony. Achieving success at work should never come at the expense of sacrifices at home, which is why flexible work hours and arrangements are part of our culture. When we feel supported in the workplace and at home, there’s nothing we can’t achieve in the cloud.
*Inclusive Team Culture
Here at AWS, it’s in our nature to learn and be curious. Our employee-led affinity groups foster a culture of inclusion that empower us to be proud of our differences. Ongoing events and learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences, inspire us to never stop embracing our uniqueness.
*Mentorship and Career Growth
We’re continuously raising our performance bar as we strive to become Earth’s Best Employer. That’s why you’ll find endless knowledge-sharing, mentorship and other career-advancing resources here to help you develop into a better-rounded professional.

BASIC QUALIFICATIONS

* B.Sc. or M.Sc. degree in Computer Science or Electrical Engineering * 15+ years of professional experience in SW development * Strong hands-on experience in C development * Proven experience with large-scale SW architecture and design * Hands-on experience developing Firmware and network drivers for embedded systems * Multi-core / multi-threaded coding experience

PREFERRED QUALIFICATIONS

* Experience with real-time performance profiling and optimization * Hands-on experience with low-level SW development and HW devices * Hands-on experience developing in a Linux Kernel environment * Experience with networking protocols