Join us to advance the state-of-the art in database technology and serve customers all around the world.
Our team develops Amazon DocumentDB (with MongoDB compatibility), a fully-managed cloud database that enables customers to persist JSON documents and retrieve them with a powerful query language. We are developing new query capabilities, pushing the bounds of performance, driving distributed systems innovation in scalability and high availability, and investing in user experience.
As an engineer on the team, you will collaborate with colleagues on research, prototyping, software design, and implementation. Our technical problems span all aspects of database systems - multiversion concurrency control (MVCC), transactions, query optimization, data storage, indexing, parallel computation, wire protocol translation/compilation - as well as distributed systems, telemetry, build and deployment technology, and API and UI design. You may choose to focus on an area, work across areas, or rotate over time. You will have the opportunity to interact with customers and to work with product managers to define product improvements. You will solve hard problems, grow your skills, and mentor others along the way.
If you are excited by the prospect of making it easier for customers to store, query, and analyze data at scale; if you are interested in databases, operating systems, distributed systems, and/or developer tools; and if you are looking to work with teammates to propose ideas, experiment, learn, and build great software - we would love to hear from you.
Amazon is an Equal Opportunity-Affirmative Action Employer - Minority / Female / Disability / Veteran / Gender Identity / Sexual OrientationBASIC 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
• A bachelor's degree in Computer Science or equivalent knowledge and skills
• Experience with functional design
• Experience mentoring other engineers, formally or informallyPREFERRED QUALIFICATIONS
• Experience with Linux
• Experience developing and operating 24x7 production systems
• Experience designing, building, or evolving distributed systems, databases, operating systems, or developer tools
Software and Programming