Software Development Engineer - DocumentDB (with MongoDB compatibility)
- Toronto, Canada
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.
Inclusive Team Culture
Here at AWS, we embrace our differences. We are committed to furthering our culture of inclusion. We have ten employeeled 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-live 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.
This position involves on-call responsibilities, typically for one week every two months. We don't like getting paged in the middle of the night or on the weekend, so we work to ensure that our systems are fault tolerant. When we do get paged, we work together to resolve the root cause so that we don't get paged for the same issue twice.
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.
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.
• A bachelor's degree in Computer Science or equivalent knowledge and skills
• At least two years of experience writing production code
• Skill in at least one programming language used to build databases, operating systems, or distributed systems, e.g. Java, C++
• Experience with object-oriented and/or functional design
• Experience mentoring other engineers, formally or informally
• Experience with Linux
• Experience developing and operating 24x7 production systems
• Experience designing, building, or evolving distributed systems, databases, operating systems, or developer tools
Amazon is committed to providing accommodations at all stages through recruitment and employment in accordance with applicable human rights and accommodation legislation. If contacted for an employment opportunity, advise Human Resources if you require accommodation, including in order to apply for a position.
Back to top