Software Development Engineer, EC2 Instance Networking

One of the world's biggest public clouds provider
$129,300 - $223,600
Backend
Senior Software Engineer
In-Person
5,000+ Employees
3+ years of experience
AI · Cloud

Description For Software Development Engineer, EC2 Instance Networking

Do you want to shape the future of virtualized (SDN) networking in one of the world's biggest public clouds? The Amazon Elastic Compute Cloud (EC2) VPC Dataplane team owns the packet pipeline that runs right beneath all our customer's EC2 VPC instances, adding features like firewalls (security groups), routing, billing and monitoring as we touch every single packet on every single host across our worldwide fleet in more than 30 regions.

Our vision is to combine the performance of bare metal networking while maintaining all the benefits of the cloud, including delivering features not possible on bare metal leading to true Software Defined Networking (SDN). We continue to grow, and are looking for kernel/embedded C programmers who can deliver ultra-high performance for our EC2 customers - our goal is to be processing many millions of packets per second on embedded CPU cores.

This requires both being able to implement highly optimized data structures, but also low level tuning to our hardware. If you have good experience in C/C++, and a passion for systems software engineering such as kernel or embedded software development, then this is a unique opportunity to join us in building the platform which is the basis for all new EC2 VPC features in the years to come.

You can have an immediate impact for all of our customers including internal customers such as AWS Lambda, and external customers that run on Amazon EC2 as we deploy new features and updates regularly and often. With the extensive network and access to Principal, Sr. Principal and Distinguished Engineers across EC2, AWS and Amazon, there are many stretch opportunities to grow your skills and knowledge.

Key job responsibilities:

  • Being an engineer on a small team, mentoring junior engineers, ensuring the right development practices are followed.
  • Be very hands-on; work with the engineering team to manage the day-to-day development activities by leading architecture decisions, participating in designs, design review, code review, and implementation.
  • Maintain current technical knowledge to support rapidly changing technology, always on a lookout for new technologies and work with management and development team in bringing new technologies.
  • Communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy.

About the team: Our team puts a high value on work-life balance. Striking a healthy balance between your personal and professional life is crucial to your happiness and success here. Our team is dedicated to supporting new team members. We have a broad mix of experience levels and Amazon tenures, and we're building an environment that celebrates knowledge sharing and mentorship. Our senior engineers truly enjoy mentoring more junior engineers and engineers from non-traditional backgrounds through one-on-one mentoring and thorough, but kind, code reviews. We care about your career growth and try to assign projects and tasks based on what will help each team member develop into a better-rounded engineer and enable them to take on more complex tasks in the future.

Last updated 3 months ago

Responsibilities For Software Development Engineer, EC2 Instance Networking

  • Implement highly optimized data structures and low-level hardware tuning
  • Process millions of packets per second on embedded CPU cores
  • Mentor junior engineers and ensure proper development practices
  • Lead architecture decisions and participate in design reviews
  • Manage day-to-day development activities
  • Stay current with rapidly changing technology
  • Communicate with users, technical teams, and senior management

Requirements For Software Development Engineer, EC2 Instance Networking

Linux
  • 3+ years of non-internship professional software development experience
  • 2+ years of non-internship design or architecture (design patterns, reliability and scaling) of new and existing systems experience
  • Experience programming with at least one software programming language
  • Experience with C/C++ programming
  • Knowledge of kernel or embedded software development

Benefits For Software Development Engineer, EC2 Instance Networking

Medical Insurance
  • Medical Insurance
  • Financial Benefits
  • Other Benefits

Interested in this job?

Jobs Related To Amazon Software Development Engineer, EC2 Instance Networking

Software Development Engineer, Alexa Skills Kit

Senior Software Engineer position at Amazon working on Alexa Skills Kit backend services and architecture

Sr. System Development Engineer, MSP Engineering

Senior System Development Engineer position at Amazon focusing on warehouse automation systems and controls engineering, combining technical leadership with hands-on development.

Senior SW Engineer, Network Drivers, ENA

Senior Software Engineer position at AWS developing network drivers for cloud infrastructure, focusing on high-performance networking solutions and customer satisfaction.

Formal Verification Engineer

Senior Formal Verification Engineer position at AWS's Annapurna Labs, focusing on hardware and software verification for cloud infrastructure.

Software Development Engineer, S3

Senior Software Engineer position at Amazon AWS S3 team, focusing on high-performance Rust development for AI/ML and data storage services.