About this role
The Storage Layer Services (SLS) team owns the multi-tenant storage layer that powers Atlas Infinite — the largest architectural change to MongoDB Atlas Database since its launch ten years ago. By separating storage from compute, alongside other innovations, this architecture will provide better elasticity, scalability, and performance for our most demanding workloads.
We are looking for a talented Senior Software Engineer to join our team as we execute on a multi-year roadmap and rapidly scale our Rust services to handle petabytes of data while improving security, durability, availability, and performance. Come do some of the most interesting work of your career as we Think Big and Go Far for our customers!
While you will have opportunities to learn and work across all parts of this complex distributed system, this role is specifically focused on the services that interact with the Atlas Control Plane and manage tenants to keep the system running predictably and safely through load spikes and failures.
What you’ll do
• Design, build, and operate control plane services powering an elastic and multi-tenant storage layer for thousands of database instances
• Solve problems around maintaining high availability and performance during load spikes, hardware failures, cloud provider outages, and other disruptions
• Contribute to a culture of operational excellence through dashboards, playbooks, and on-call improvements
• Lead complex technical projects from planning through successful deployment with clear stakeholder updates
• Partner closely with peers across database, cloud, and infrastructure engineering teams as well as project management to investigate incidents and develop long-term roadmaps
• Mentor junior engineers and foster a collaborative team environment
We’re looking for someone with
• 5+ years of professional software development experience building, deploying, and operating multi-tenant cloud services with a focus on operational excellence
• Experience with large backend/compiled codebases, such as Rust or C/C++
• Experience with containerization and orchestration platforms (e.g. Kubernetes)
• Experience with observability tooling (e.g. time series metrics, dashboards)
• Experience with distributed systems
• Familiarity with database internals or experience building core components for data processing systems
• Excellent verbal and written technical communication skills, with a strong desire to collaborate with colleagues
• Strong time management skills and the ability to realistically assess project complexity
• Demonstrated track record of going above and beyond for customers
Strong candidates may also have
• Experience writing and profiling highly performant Rust code
• Experience improving reliability through chaos engineering and load testing
• Experience building scalable cloud services on multiple cloud provider platforms (AWS, Azure, GCP)
• Interest in the theory and practice of high-availability systems (