Senior Software Engineer, Core Server
MongoDBAbout the role
The worldwide data management software market is massive (IDC forecasts it to be $138 billion by 2026!). At MongoDB we are transforming industries and empowering developers to build amazing apps that people use every day. We are the leading modern data platform and the first database provider to IPO in over 20 years. Join our team and be at the forefront of innovation and creativity.
The MongoDB Server Team builds the open source database at the core of our business. We provide the rich feature set needed for a document database that offers strong consistency and a high degree of scalability. We have the unique challenge of enabling our Cloud Team to run the database as a service, while delivering an on-premises product that delights both enterprise and community users. We range in experience from new college grads to seasoned staff engineers, but we share a love of computer science fundamentals and a rigorous commitment to quality. The Server Team presents endless opportunities for learning and growth, and many team members have chosen to build their careers here.
This role can be based out of our NYC office or remotely from anywhere in North America.
Candidate Profile
- At least 3 years of experience in building industrial-strength software projects with robust designs, a high level of code quality, and collaborative software development processes. Candidates with more experience will be considered for more senior roles
- Degree in Computer Science, Software Engineering, or a related field, or equivalent practical experience, with strong proficiency in data structures, algorithms, concurency, and software design/architecture
- Interest in the theory and practice of database internals and distributed systems
Position Expectations
- Collaborate with other Server team engineers to coordinate seamless changes in a feature-rich, large C++-based codebase
- Identify, design, implement, test, and support new server features
- Keep abreast of new database technologies and research, and work to incorporate them into the server
- Contribute to a world-renowned open source database software project
- Espouse and promote the MongoDB values through mentorship, building together, intellectual honesty, and accountability
Additional Requirements
- Experience in programming, debugging, and performance tuning distributed and/or highly concurrent software systems
- Professional or advanced academic expertise in the domain of distributed systems is helpful, but not required
Success Measures
- In three months, you’ll have contributed to the development of a project slated for the next major release, and diagnosed and fixed a few customer or testing-reported issues
- In six months, you’ll be responsible for reviewing code, interviewing potential new hires, and reviewing new feature designs
- In twelve months, you’re owning the development of a new major feature and are helping to mentor new engineers on the team
Storage Execution Team
The MongoDB Storage Execution team's mission is to research and develop new algorithms for storing data, maintain a pluggable protocol for MongoDB storage engines, and provide a comprehensive framework for managing concurrent, transactional access to data stored locally within a MongoDB database instance.
Our team champions a strong culture of inclusivity, diversity, and collaboration. As a team member, you will contribute to crafting and maintaining the nexus of the different server components, connecting its query system and distributed replication system to its underlying storage engines. Ongoing work includes improvements to support time series data, memory allocator improvements, new indexing algorithms, and implementations for admission control and flow control for the server.
Additional Requirements
- Experience in programming, debugging, and performance tuning distributed and/or highly concurrent software systems
Sharding Team
The MongoDB Sharding Team builds infrastructure and tools that allow users to scale their workloads beyond the capabilities of a single node. They take pride in building elegant abstractions for difficult distributed systems problems which enable users of MongoDB to focus on working with data instead of worrying about where it resides or how it’s accessed. As a result of this, the projects delivered by the Sharding Team have enormous impact and represent solutions to the most difficult data challenges faced by our largest clients.
To achieve their goals, the sharding team designs and builds machinery that transforms independent query
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s