Senior Software Engineer, Workload Scheduling
The worldwide data management software market is massive (According to IDC, the worldwide database software market, which it refers to as the database management systems software market, was forecasted to be approximately $82 billion in 2023 growing to approximately $137 billion in 2027. This represents a 14% compound annual growth rate). At MongoDB we are transforming industries and empowering developers to build amazing apps that people use every day. We are the leading developer 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 Workload Scheduling team is focused on optimizing the operational resiliency of a MongoDB cluster. We build out the core server workload management infrastructure so that MongoDB can properly queue, load shed, and make decisions to stabilize performance during situations where system resources are beginning to become constrained. We are working to move workload management policies out of the core server into its own process for better modularity, and building out the infrastructure to observe, measure, and tune workload mechanisms and policies to improve MongoDB’s performance and stability while under load.
We are a new and small team looking for an experienced engineer to join us. We are looking for someone who is excited about building something from the ground up, and a role with lots of opportunities to make a large impact on the operational resiliency story at MongoDB.
Candidate Profile- Minimum 5 years of experience in programming, debugging, and performance tuning distributed and/or highly concurrent low-level software systems. Experience in C++ and/or Rust is preferable.
- Strong systems fundamentals, including multi-threaded programming and performance profiling
- Excellent verbal and written technical communication skills and a desire to collaborate with colleagues and mentor junior engineers and interns.
- Passion for learning new things in the domains of software engineering, distributed systems, and performance.
- Familiarity with distributed system concepts such as fault tolerance, consistency, and availability
- Experience with writing software to observe and mitigate overload scenarios for highly performant and concurrent systems
- Write production-ready database code in C++, Rust, or possibly another low-level language
- Write unit tests and integration tests in C++, Javascript, and Python to demonstrate application correctness
- Investigate the performance characteristics of the server and write performance regression tests
- Build and optimize workload management primitives such as operation queueing/ticketing mechanisms
- Implement and continuously improve server workload policies to schedule, prioritize, and make decisions about incoming and in-progress operations to maximize goodput while under system load
- Build a process external to the core server that monitors and tunes policies of a MongoDB server.
- Improve the workload and system observability/diagnostics of the core server.
- Diagnose performance and correctness test failures, identify bugs and/or deficiencies in existing code, and fix them
- Interview candidates for software engineering positions
- Handle customer escalations
- Collaborate with stakeholders and engineering teams across the company to jointly work on large initiatives
- In the first month, you will have understood the high level architecture of MongoDB and fixed a few bugs
- In three months, you will have contributed to the development of a project slated for the next major release of MongoDB, and diagnosed and fixed a few customer or testing-reported issues
- In six months, you will have taken on code review responsibilities and are involved in reviewing the design for new features
- In twelve months, you will be leading the development of a new feature and helping to mentor new engineers on the team
To drive the personal growth and business impact of our employees, we’re committed to developing a supportive and enriching culture for everyone. From employee affinity groups, to fertility assistance and a generous parental leave policy, we value our employees’ wellbeing and want to support them along every step of their professional and personal journeys. Learn more about what it’s like to work at MongoDB, and help us make an impact on the world!
MongoDB is committed to providing any necessary accommodations for individuals with disabilities within our application and interview process. To request an accommodation due to a disability, please inform your recruiter.
MongoDB, Inc. provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type and makes all hiring decisions without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.
MongoDB’s base salary range for this role is posted below. Compensation at the time of offer is unique to each candidate and based on a variety of factors such as skill set, experience, qualifications, and work location. Salary is one part of MongoDB’s total compensation and benefits package. Other benefits for eligible employees may include: equity, participation in the employee stock purchase program, flexible paid time off, 20 weeks fully-paid gender-neutral parental leave, fertility and adoption assistance, 401(k) plan, mental health counseling, access to transgender-inclusive health insurance coverage, and health benefits offerings. Please note, the base salary range listed below and the benefits in this paragraph are only applicable to U.S.-based candidates.
MongoDB’s base salary range for this role in the U.S. is:$118,000—$231,000 USD