Amazon Web Services (AWS) is the world leader in providing highly reliable, scalable, low-cost infrastructure platform in the cloud that powers tens of thousands of businesses around the world!
We are in the process of building a new AWS service in Amazon Vancouver which will help us achieve this mission for AWS customers across the world. In this role, you will build a new AWS service that is going to be trend setting in the event driven systems. This is an area that requires solving the hardest engineering challenges to solve some of the classical event driven asynchronous architectures problems for our customers. As a tier zero Amazon service our solutions have to be scalable, efficient, and extremely fault tolerant.
In addition to delivering critical software, you will draw from a deep and broad technical expertise to mentor engineers and provide leadership on complex technical issues.
If you are excited with the idea of shaping the developer experience, influencing how applications of future will be created and are passionate about distributed systems, user-experience, and working in an autonomous engineering culture, we would like to talk to you!
How do you know if you are a good fit for us?
You are fascinated by and want to innovate in distributed fault-tolerant systems that operate at scale. You love customers. When our customers ask for the next big feature, you know this means you’ll be able to truly dig into the solution and get it done right. You love owning the project from idea to production, delivering not only in the implementation but in all phases from the kernel of an idea to quickly getting that battle-tested code into production. You enjoy collaborating with your teammates. You enjoy autonomy and strive to take on more accountabilities and master new skills.
• BS, MS or PhD in Computer Science or related field
• 3+ years of professional software development experience
• Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
• 3+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
• MS or PhD in Computer Science.
• 3+ years of experience in one or more object oriented programming language.
• Experience designing, developing, and deploying large-scale distributed systems.
• Experience with high availability & distributed computing software engineering.
• Experience leading and mentoring junior engineers on exemplary software development practices and design reviews.