
Senior Software Engineer (Cluster Scalability)
MongoDB
Job description
-
Join Cluster Scalability, one of MongoDB’s Online Transaction Processing teams, and help build the core infrastructure that makes MongoDB a world-class distributed database
-
The team builds the infrastructure and tools that let customers scale their workloads past what a single node can handle
-
We take pride in building clean abstractions over hard distributed systems problems, so users can focus on their data instead of worrying about where it lives or how it’s accessed
-
Our work has a big impact: it solves the hardest data challenges faced by MongoDB’s largest customers
-
As a Senior Software Engineer on Cluster Scalability, you’ll work on data partitioning, one of the hardest and most impactful problem areas at MongoDB today
-
You’ll collaboratively design and build the distributed machinery that turns independent query-processing and storage nodes into a single, unified database system
-
Your team’s work will be to build the data-movement and dynamic-scaling features that run on top of it
-
Current work includes seamless horizontal scaling with minimal tradeoffs, better cluster elasticity and smarter workload execution
-
You’ll solve complex performance problems and design protocols for moving and placing data without disruption
-
Your work will help the architecture scale reliably to meet customer demand at any volume
-
Our team champions a strong culture of inclusivity, diversity, and collaboration
-
If you want to work on a collaborative team that applies distributed systems fundamentals to deliver core features of a popular database, join us!
-
Let’s change what’s possible for application developers, system architects, and database operators
-
Success Measures:
-
In your first month, you’ll understand the high-level architecture of MongoDB, dive into the details of your team’s components, and resolve a few bugs
-
In the first three months, you’ll contribute to the development of a project slated for the next release of MongoDB, take on code review responsibilities, and participate in design reviews for new features
-
In the first six months, you’ll lead the development of a new feature and help mentor new engineers on the team- Degree in Computer Science or similar field, or equivalent practical experience, with strong competencies in data structures, algorithms, and software design/architecture
-
Distributed systems
-
System observability
-
Experience with building production-level code with a large user base, robust design structure and rigorous code quality, written in C++
-
Passion for the theory and practice of system design for large-scale distributed systems, as well as hands-on or academic experience in the domain
-
5+ years of experience building distributed systems
-
Has demonstrated industry success or academic research in areas such as:
-
Performance tuning
-
System resiliency
-
Understands modern computer architecture and internals to the degree that they can reason about how specific design choices plays out in a system like MongoDB
-
High performance / low latency networking