Amazon Web Services (AWS) is the world leader in providing a highly reliable, scalable, low-cost infrastructure platform in the cloud that powers tens of thousands of businesses around the world! The messaging team owns and operates Simple Queue Service(SQS) which provides AWS customers with the cloud infrastructure for building highly scalable, asynchronous and fault tolerant cloud applications. It’s a core architectural component of the critical for Amazon as well as many leading global enterprises running on AWS. If you are passionate about the challenges of big scale, building cutting edge technologies and making developing applications easy and reliable then AWS Simple Queue Service and related workflow services are for you.
The messaging service and the team is growing fast, and is innovating in big and brand new feature areas. We are looking for highly innovative and talented software engineers to help transform the service through technological advancements. As a member of the team, you will have strong ownership over the , , and operation of a massive scale (think multi-million tps) system and work alongside other outstanding engineers to one of the most elastic and feature rich messaging service in the world. You will also have the opportunity to work across a range of technologies such as -based , nosql datastores, low level performance storage , and massive real time analytics.
How do you know if you are a good fit for us? You are fascinated by and want to innovate in fault-tolerant 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 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 love working in agile programming environments and running fast to deliver evolution for your AWS services.
• 2+ years of non-internship professional software development experience
• Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
• 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
Bachelors or Masters Degree in Computer Science or related field
• 4+ years professional experience in software development
• Experience in object-oriented , structures, , and problem solving
• Proficiency in or other OOP languages such as , , Ruby or C++
• Experience designing and building sophisticated fault-tolerant systems
• Excellent written and verbal communication skills, sense of ownership, urgency and drive
• Knowledge of professional software engineering practices & best practices for the software life cycle, including coding standards, code reviews, control management, build processes, testing, and operations
• Experience in communicating with users, and other technical teams
• Knowledge and experience with networking and virtualization are a plus