Mongodb

Staff/Senior Performance Engineer

Save to Kiter
What Mongodb is looking for in applicants

The database market is massive (IDC estimates it to be $121B+ by 2025!) and MongoDB is at the head of its disruption. 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.

MongoDB is seeking a senior/staff engineer to join the product performance team. This team is responsible for understanding the performance of MongoDB & sharing that knowledge internally and externally. We drive performance improvements for MongoDB products. As a result, customers get more predictable, scalable and efficient applications.

We foster a performance & customer-oriented culture by writing performance workloads, running experiments, documenting conclusions and sharing what we’ve learned. An integral part of our work is talking to product engineers and managers to advocate for performance improvements, helping them add good performance tests and sharing & contextualizing results.

The database is the beating heart of all software applications. If you want to experience a broad systems-perspective of technologies from processors, storage & networks to cloud-based globally distributed systems - this is the role for you.

What we’re looking for

  • Ideally we are looking for someone with 5+ years of experience in software development and/or performance engineering
  • Purposeful learners, who seek understanding and try new approaches when they encounter roadblocks
    • Past work may include: developing self-taught skills, becoming the go-to resource for a particular domain, or performing a root cause analysis on a support case
  • Capable communicators, who can make complex concepts easy to grasp in written and spoken language
    • Past work may include: writing technical documentation, producing trainings, or publishing academic papers
  • Scientific experimenters, who know how to decompose and solve complex problems and can rapidly iterate by validating new hypotheses and rethinking current assumptions
    • Past work may include: designing and understanding complex systems, performing comparative benchmarking, or identifying the cause of an unexplained result
  • Creative coders, who can readily begin writing software in C++, Javascript or Python and have some familiarity with the thorny technical issues central to databases: distributed systems, consensus algorithms, data replication, query optimization, data storage, OS internals, concurrency and scheduling, networking, etc
    • Past work may include: contributing to codebases, writing complex scripts that interact with AWS/Azure/GCP, or tuning a database or operating system for performance

If you have other experiences that speak to these skills, please do not hesitate to apply. We are eager to build a diverse team that draws from a range of complementary experiences.

What we expect

  • Increase our performance coverage by writing new macro-benchmarks, creating new workloads that stress the database and systems. Consult with developers to help them add performance tests for new features
  • Investigate performance issues, and help undercover the root cause of an issue using internal tools as well as industry standards such as gdb and perf
  • Curate an understanding of our performance coverage and clearly communicate the implications of changes in terms of user experience to stakeholders
  • Consult with engineers developing new features and to help them produce the most valuable performance tests to benchmark new features

Success Measures

  • In 3 Months
    • You have written new workloads using our performance infrastructure
    • You have investigated performance issues using internal tools as well as tools like perf and gdb
  • In 6 Months
    • You can take a workload from the field that has a performance issues and produce and operationalize a performance regression test
    • You have a strong understanding of our performance framework and participate in roadmap discussions around new features to be added
    • You can take an open-ended performance question from other teams, investigate it and provide actionable guidance
  • In 12 Months
    • You have a strong understanding of our current performance coverage, and are persuasive about where we ought to invest in additional coverage and where we can reduce our spend
    • Your advice and consultation around performance behavior and testing of new features is eagerly sought and highly appreciated by development teams

What is performance?

  • Does the software perform as the user expects using an acceptable amount of resources
  • We further prioritize performance requirements in the following order: durability, availability, predictability, horizontal scalability, vertical scalability and efficiency
  • Measures include: time, throughput, utilization, latency, jitter, stability or cost
  • Resources: CPU, memory, IOPs, storage, bandwidth, power consumption

This role can be based out of our New York City office or remotely in North America.

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.

Want some tips on how to get an interview at Mongodb?

What is Mongodb looking for?
If this role looks interesting to you, a great first step is to understand what excites you about the team, product or mission. Take your time thinking about this and then tell the team! Get in touch and communicate that passion.
What are interviews for Staff/Senior Performance Engineer like?
Interview processes vary by company, role and team. The best plan is to see what others have experienced and then plan accordingly.
How to land an interview at Staff/Senior Performance Engineer?
A great first step is organizing your path to an offer. Check out Kiter for tools to get started!