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! Our team owns and operates Amazon MQ that provide AWS customers with the cloud infrastructure for building highly scalable, asynchronous and fault-tolerant distributed cloud applications. If you are passionate about the challenges of large scale, building cutting-edge technologies and making development of distributed applications easy and reliable then the Amazon MQ is the team for you. Amazon MQ is one of the fastest growing AWS services and customers are excited to use our service because they can meet their messaging needs while using open standards like AMQP, MQTT, STOMP and JMS. Our team contributes to open source initiatives, while building on top of the latest AWS serverless technologies such as Lambda, API Gateway, Step Functions, CodeDeploy, and CloudFormation among others.
We have a rich roadmap including launching new products within the Amazon MQ brand that follow our vision of providing customers hands-free messaging at large scale while supporting open standards. We are looking for engineers who are excited to build these new systems and taking on one-of-a-kind technology challenges.
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. You love mentoring engineers and raising the development and operational bar of your team.BASIC QUALIFICATIONS
• 3+ 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
• 6+ years professional experience in software development
• 2+ years as a senior team lead
• Proficiency in Java or other OOP languages such as C#, Python, Ruby, C++ or even Erlang
• Experience in object-oriented design, data structures, algorithms, and problem solving
• Experience designing and building sophisticated fault-tolerant distributed systems
• Excellent written and verbal communication skills
• Sense of ownership, urgency and drivePREFERRED QUALIFICATIONS
• MS or PhD in Computer Science.
• 1+ years of experience developing for a Linux or UNIX environment.
• Experience with software such as Apache ActiveMQ and Apache Camel is a plus
• Experience designing, developing, and deploying large-scale distributed systems.
• Experience with data mining software and techniques
• Experience leading and mentoring junior engineers on good software development practices and design reviews.
Software and Programming