About The Position

AWS Infrastructure Services owns the design, planning, delivery, and operation of all AWS global infrastructure. In other words, we’re the people who keep the cloud running. We support all AWS data centers and all of the servers, storage, networking, power, and cooling equipment that ensure our customers have continual access to the innovation they rely on. We work on the most challenging problems, with thousands of variables impacting the supply chain and we’re looking for talented people who want to help. You’ll join a diverse team of software, hardware, and network engineers, supply chain specialists, security experts, operations managers, and other vital roles. You’ll collaborate with people across AWS to help us deliver the highest standards for safety and security while providing seemingly infinite capacity at the lowest possible cost for our customers. And you’ll experience an inclusive culture that welcomes bold ideas and empowers you to own them to completion. Amazon Web Services is looking for experienced software development engineers to help define and build the future of cloud computing! This position is a developer role with an EC2 Networking team. The team owns the packet pipeline that runs right beneath all our customer's EC2 VPC instances, adding features like firewalling (security groups), billing and monitoring as we touch every single packet on every single host across our massive worldwide fleet. 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 i.e. true Software Defined Networking (SDN). We are looking for low-level programmers who can deliver ultra high performance - our goal is to be processing millions of packets per second on a CPU core all in Rust. This requires both being able to implement highly optimized data structures, but also low level (including by hand assembly and vectorizing) tuning to our hardware. If you have good experience in Rust or C/C++, and a passion for systems software engineering such as kernel or embedded development, then this is a unique opportunity to join us at day one of building the platform which is the basis for all new EC2 VPC features in the years to come. The AWS EC2 Networking team designs, builds, and operates the network infrastructure powering Amazon Elastic Compute Cloud (EC2). We deliver high-performance, secure, and reliable connectivity solutions that enable customers to run mission-critical workloads in the cloud. Our team develops innovative networking technologies including Virtual Private Clouds (VPCs), Elastic Network Interfaces, and advanced routing capabilities. We obsess over network performance, security, and scalability to ensure customers can deploy applications with confidence. Through continuous innovation, we help customers reduce costs and complexity while increasing operational efficiency in their cloud networking environments.

Requirements

  • 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

Nice To Haves

  • 3+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
  • Bachelor's degree in computer science or equivalent
  • Bachelor's degree or equivalent, or experience in written and oral communication, including the ability to communicate with all levels in the organization (technical, business, executive)
  • Knowledge of data structures, algorithm design, statistics, and system design
  • 2+ years of using Linux and demonstrated proficiency with associated tools or languages experience
  • Experience that includes strong analytical skills, attention to detail, and effective communication abilities, or experience in Network protocols like DNS/DHCP/TCP and experience in Linux and Networking protocols
  • Experience in embedded development in C/C++, or experience in performant kernel development (CUTLASS, FlashInfer)
  • Knowledge of professional software engineering & best practices for full software development life cycle, including coding standards, software architectures, code reviews, source control management, continuous deployments, testing, and operational excellence
  • Experience in debugging, profiling, and implementing software engineering best practices in large-scale systems, or experience leading and influencing your team or organization
  • Experience in scripting or programming work in Ruby, Python, Shell/BASH scripting, Java, C/C++, C, Perl, or other languages
  • Programming experience in C/C++, Rust, Go

Responsibilities

  • Being the lead 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 look out 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.

Benefits

  • 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)
  • 401(k) matching
  • paid time off
  • parental leave
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service