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.
We are looking for passionate learners, motivated to grow, take on challenges and mentor others along the way.
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.
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 passionate bout working with teammates to propose ideas, experiment, learn, and build great software we would love to hear from you.
Inclusive Team Culture
Here at AWS, we embrace our differences. We are committed to furthering our culture of inclusion. We have ten employee-led affinity groups, reaching 40,000 employees in over 190 chapters globally. We have innovative benefit offerings, and host annual and ongoing learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences. Amazon's culture of inclusion is reinforced within our 14 Leadership Principles, which remind team members to seek diverse perspectives, learn and be curious, and earn trust.
Our team puts a high value on work-life balance. It isn't about how many hours you spend at home or at work; it's about the flow you establish that brings energy to both parts of your life. We believe striking the right balance between your personal and professional life is critical to life-long happiness and fulfillment. We offer flexibility in working hours and encourage you to find your own balance between your work and personal lives.
Mentorship & Career Growth
Our team is dedicated to supporting new members. We have a broad mix of experience levels and tenures, and we're building an environment that celebrates knowledge sharing and mentorship. Our senior members enjoy one-on-one mentoring and thorough, but kind, code reviews. We care about your career growth and strive to assign projects based on what will help each team member develop into a better-rounded engineer and enable them to take on more complex tasks in the future.
- A bachelor's degree in Computer Science or equivalent knowledge and skills
- At least five years of experience writing production code solving problems of increasing complexity
- Skill in at least two programming languages used to build databases or distributed systems, e.g. Java, C++, Go
- Experience applying object-oriented and/or functional design
- Experience defining and/or refactoring software architecture
- Experience leading a technical project across multiple engineers
- Experience mentoring other engineers, formally or informally
- Experience with Linux
- Experience communicating with users, other technical teams, and senior management regarding product strategy and requirements, execution status, and technical designs
- Experience getting things done through collaboration with engineers on multiple teams.
- Designing, building, or evolving databases or operating systems
- Designing, building, or evolving distributed systems
- Designing, building, or evolving developer tools
- Operating 24x7 production systems