Senior Software Engineer
Build and operate performant, multi-tenant distributed storage services for MongoDB’s cloud platform. The role requires 5+ years of experience with concurrent systems, cloud services, performance-sensitive software, and backend or compiled codebases, preferably in Rust or C/C++.
About the job
Responsibilities
- Develop secure, multi-tenant, cloud-native storage solutions for performance, automatic failover, and zero downtime.
- Build, deploy, operate, and support production-ready applications in Rust, including on-call participation.
- Diagnose test failures and performance regressions and implement fixes.
- Lead development and project management for large, cross-team initiatives.
- Identify, design, implement, test, and support Storage Layer Services features.
- Contribute to operational excellence for a running cloud service.
- Collaborate with Product Management and Engineering leadership to define product roadmaps.
- Review code and designs and mentor engineers.
Requirements
- 5+ years of experience programming, debugging, and performance-tuning distributed and/or highly concurrent software systems.
- Strong systems fundamentals, including multithreaded programming and performance profiling.
- Experience with distributed systems.
- Experience building, deploying, and operating multi-tenant cloud services with a focus on operational excellence.
- Familiarity with database internals or experience building core components for data-processing systems.
- Hands-on experience developing performance-sensitive software.
- Experience with large backend or compiled codebases, preferably in Rust or C/C++.
- Bachelor's degree in Computer Science or a related field, or equivalent practical experience.
- Excellent verbal and written technical communication skills and a collaborative approach.
- Strong time-management skills and the ability to assess project complexity realistically.
- Interest in the theory and practice of high-availability systems.
Nice to Have
- Hands-on experience with high-availability systems.
- Master's degree or PhD in a relevant domain.
Skills
Rust, C++, C, Distributed Systems, Cloud Services, Multithreading, Performance Profiling, Database Internals, Cloud-Native Architecture, Multi-Tenant Systems, High Availability, Automatic Failover, On-Call Operations, Backend Development, MongoDB
Similar jobs
Backend Engineering jobsSenior backend engineer designing scalable services and APIs that connect Phantom Cash to blockchain networks. The role requires Node.js/NestJS, REST API, event-driven, and distributed-systems expertise, with blockchain or fintech experience preferred.
Build and operate highly performant Core API services for real-time fraud detection, owning reliability, observability, scaling, and production operations. The role requires 5+ years of backend experience with Go or Node.js and strong SRE practices.
Build and operate the backend runtime platform that schedules, executes, and persists security and compliance tests at scale. The role requires strong production systems experience, ownership of complex projects, debugging expertise, and effective technical collaboration and mentorship.
Build and operate backend systems for large-scale data ingestion, workflow processing, and AI inference. The role requires 8+ years of backend experience, distributed-systems expertise, and proficiency with Python, TypeScript, or Go in production AWS environments.
Provides hands-on technical leadership for production C++ software running on Linux edge-compute platforms. The role spans architecture, sensor and imaging integration, performance optimization, and cross-team delivery for mission-critical autonomous systems.