About The Position

The MongoDB Replication Team builds infrastructure to support fault tolerance, high availability, and tunable consistency. Distributed systems is a core focus of MongoDB, so the projects delivered by the Replication Team are highly visible and are typically among the flagship features for each major MongoDB release, including multi-document transactions. We’re currently working on improving our API and interface boundaries so that we can meet the performance and correctness needs of the world’s most demanding enterprises while enabling new, more efficient data storage and retrieval patterns. 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. We are looking to speak to candidates who are based in New York City for our hybrid working model. Candidate Profile

Requirements

  • Minimum 10 years of experience in programming, debugging, and performance tuning distributed and/or highly concurrent C/C++ software systems. Candidates with more experience will be considered for more senior roles. Experience in C++ is preferable, but not required
  • Strong systems fundamentals, including multi-threaded programming and performance profiling
  • Familiarity with distributed systems such as consensus protocols, data replication, distributed transactions, and fault tolerance
  • Familiarity with database internals or building core components for data processing systems
  • Excellent verbal and written technical communication skills and a desire to collaborate with colleagues and mentor junior engineers and interns
  • Excellent time management skills and the ability to make realistic assessments of project complexity
  • Passion for learning new things in the domains of computer science and software engineering

Responsibilities

  • Develop novel data replication solutions based on the Raft consensus protocol for ensuring automatic failover and zero-downtime of user applications
  • Handle distributed systems related customer escalations from Technical Support team
  • Write production-ready database code in C++
  • Write unit tests and integration tests in C++, Javascript, and Python to demonstrate application correctness
  • Diagnose test failures, identify bugs in existing code, and fix them
  • Investigate the performance impact of code changes that may cause software performance regressions
  • Interview candidates for software engineering positions
  • Develop and maintain expertise on cutting edge database and distributed systems research from industry and academia
  • Handle (or lead the effort to handle) time-sensitive customer escalations
  • Lead development and project management of large, cross-team projects
  • Collaborate with stakeholders and engineering teams across the company to jointly work on large initiatives
  • Advise Product Management on engineering complexity and inter-project dependencies
  • Collaborate with Product Management and Engineering leadership to define product roadmaps

Benefits

  • 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
  • health benefits offerings

Stand Out From the Crowd

Upload your resume and get instant feedback on how well it matches this job.

Upload and Match Resume

What This Job Offers

Job Type

Full-time

Career Level

Mid Level

Education Level

No Education Listed

Number of Employees

5,001-10,000 employees

© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service