About The Position

EC2 Nitro drives the planet’s largest, fastest growing and most feature-rich compute cloud. Nitro is AWS’s ground-up design for virtualization at global scale built on a fully custom stack of hardware, firmware and applications. Nitro has enabled EC2 to support Intel, AMD and Amazon’s custom silicon - Graviton2 - while raising the industry bar for security and performance across our product line. The EC2 Server Provisioning team is the assembly line for EC2, turning new servers into EC2 virtualized hosts running customer workloads across the globe. Every EC2 customer instance running on every host-type, in every data center , across the globe has passed through services operated by this team. Engineers on EC2 Server Provisioning become subject matter experts on distributed, asynchronous services running at global scale. If you are an experienced software development engineer who is passionate about building the platform to support the world’s premier cloud computing environment, then this is the job for you. The EC2 Provisioning team lays the foundation on which every EC2 service - both internal and external - runs. The team is responsible for the software infrastructure that is required to make racks of hardware received from manufacturing into cloud infrastructure that allows our customers to run the wide variety of EC2 instances that are available today. The scale of this problem spans many millions of this devices across globe and every new EC2 instance type launched is built through EC2 Provisioning services. To add some spice to the challenge - the infrastructure must be able to manage live devices without any down time to our customer and keep the growing EC2 fleet healthy. We are looking for a Software Development Engineer to drive product and operational excellence in this strategically critical space. Software Development Engineers work with technical leaders to refine technical direction, and then follow through with detailed analysis, designs, and quality code. They are equally comfortable leading small, focused project teams as well as making major direct contributions to the project. They deliver features with minimal direct oversight. The baseline individual for this role will be entirely comfortable with the Linux operating system and understand how to develop in languages such as Java, C#, Python, Go or Ruby in a Linux environment. Knowledge of the use, design, and development of distributed systems and web services is preferred for this role.

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
  • The baseline individual for this role will be entirely comfortable with the Linux operating system and understand how to develop in languages such as Java, C#, Python, Go or Ruby in a Linux environment.

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
  • 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
  • Knowledge of the use, design, and development of distributed systems and web services is preferred for this role.

Responsibilities

  • Work is primarily done in Java and includes the full lifecycle of software development including: requirements, system design, implementation, testing, monitoring, support, alarming, and reporting.
  • Software Development Engineers work closely with EC2 Principal Engineers and other technical leaders to refine technical direction, and then follow through with detailed analysis, designs, and high quality code.
  • This is a hands-on position in which you will own everything from end to end: requirements gathering, designs, design reviews, implementations, code reviews, incremental feature launches, operations, mentoring, and the driving of continuous improvement.

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