Apply

Senior Staff Engineer, Cluster Scalability

Posted 6 months agoViewed

View full description

💎 Seniority level: Senior, 12 years

📍 Location: North America

💸 Salary: 168000.0 - 330000.0 USD per year

🔍 Industry: Software Development

🏢 Company: MongoDB👥 1001-5000💰 Post-IPO Equity about 7 years agoDatabaseOpen SourceCloud ComputingSaaSSoftware

🗣️ Languages: English

⏳ Experience: 12 years

🪄 Skills: LeadershipProject ManagementPythonSoftware DevelopmentSQLGitMongoDBSoftware ArchitectureC++AlgorithmsData engineeringData StructuresCollaborationCI/CDProblem SolvingRESTful APIsMentoringLinuxExcellent communication skillsDebugging

Requirements:
  • Minimum 12 years of experience in programming, debugging, and performance tuning distributed and/or highly concurrent C/C++/Rust software systems
  • Strong systems fundamentals, including multi-threaded programming and performance profiling
  • Familiarity implementing distributed systems such as consensus protocols, logical clocks, distributed transactions, and fault tolerance
  • Experience implementing database internals or building core components for data processing systems
Responsibilities:
  • Architect and develop novel protocols for moving data between different shards in a sharded database cluster, ensuring correctness, performance, resiliency, and low-cluster impact
  • Design and implement protocols for placing data intelligently throughout a cluster and the plans for how to achieve that placement
  • Handle distributed systems related customer escalations from Technical Support team and coach teammates to do the same
  • Write production-ready database code in C++, improve the existing code, and mentor their team to write higher quality code
  • Own all code the Cluster Scalability Team maintains, ensuring it achieves a high standard for quality (including security, durability, availability, and performance) and maintainability
  • Write and improve unit and integration tests in C++, Javascript, and Python to demonstrate correctness
  • Diagnose test failures, identify bugs in existing code, fix them, and prevent bugs from being introduced in new code
  • Investigate the performance impact of code changes that may cause software performance regressions
  • Interview candidates for advanced software engineering positions
  • Develop and maintain expertise on cutting edge database and distributed systems research from industry and academia
  • Lead development and project management of some of the largest projects across the company
  • Collaborate with stakeholders and engineering teams across the company to jointly work on large initiatives
  • Advise Product Management on technical product direction, engineering complexity and inter-project dependencies
  • Collaborate with Product Management and Engineering leadership to define product roadmaps
Apply