Senior Software Engineer
EC2, a part of Amazon Web Services, is a fast-growing business within Amazon that provides cost effective easy to use cloud computing resources to businesses of all sizes around the world. With AWS, you can requisition compute power, storage, databases, and many other services – paying as you go for only the resources you need.
Who we are: Our team owns a few services that enable every EC2 instance launch. We are responsible for making the decision on every launch request if the launch can move forward or not. This covers both protecting EC2 from things like fraud and making sure no single customer impacts other customers' experiences. We support every call to the EC2 RunInstances API, we handle other APIs as well. We also assist services that run on top of EC2 protect their user experiences like Lightsail, Fargate, and Workspaces.
What you will do: You will be a technical leader on the team that runs our tier1 service that tracks the state of our capacity in real-time. This team is a newly formed team that is not fully staffed yet and is just launching v1 of the service. The team owns mission-critical software that ensures EC2's business can run each and every day. The service acts as the source of truth for capacity health and account usage data. The landscape of the business is constantly changing one day you may be working on scaling the API that lets customers see their account usage, the next drafting a proposal to build a new pool health distribution mechanism for our launch path services, or if you get bored you can work with our embedded research team to build the new account metadata calculation engine using statistical models and ML.
Why it matters: EC2, while a mature business, is still growing at an incredibly fast rate with new regions launching every few months. EC2 Capacity Management sits at the heart of EC2, all roads lead to capacity and the systems that support distributing it. Our team, being central to running EC2, gets the opportunity to interact with teams across AWS and Amazon in general, we are the capacity experts. If a major product launch is happening or customer has a complex use case, we are probably involved.
Why you’ll love it: EC2 is growing so fast we are still in startup mode and there is plenty of space to innovate and grow, only the hard problems still exist. You will have ownership, not just responsibility; it will be up to you to identify the top problems and prioritize the solutions that will give the most business impact. This is a fast growing team in which the business continues to invest, the team has grown and split multiple times.
Who we're looking for: Natural technical leaders that show up to work to get things done and love building systems at scale. You will need to be able to dive deep and ensure the right operational processes are in place and that we are designing software that can scale to the business needs. Being able to set a technical vision and inspire a dev team to deliver is critical. Ideally, you are a seasoned Senior Developer looking to grow and take on the next challenge.
If this sounds intriguing consider joining our team. You will enjoy a very competitive salary, great benefits, a work environment with an innovation culture, and exciting opportunities to make history, have great fun and be part of the fastest-growing technology company on earth.
Join us in Seattle at our head office, Amazon makes relocation simple!
- B.S. degree in Computer Science, in a similar technical field of study or equivalent practical experience
- 4+ years of software development experience in one or more general purpose OO programming languages
- Experience working on at least any of the following two areas: large-scale distributed application development, machine learning, Unix/Linux environments, and deep-dive root-cause problem analysis.
- Fluent communication skills in verbal and written English
- Masters or Ph.D. degree, further education or similar experience in any related computer science or engineering field
- 6+ years of hands-on experience with two or more general purpose OO programming languages including but not limited to: Java, C#, C/C++, Ruby
- Interest and ability to learn other coding languages as required