All experiences
Offered2026-08-04·4 min read

MongoDB SWE-3 Gurgaon — 4 Rounds, Offered

4-round loop for SWE-3 at MongoDB Gurgaon. Coding round, HM behavioral, real-world problem, and HLD. Got weak signal in Round 3 but strong HM round saved it. Offer received within 2 weeks.

Company

MongoDB

Role

SWE-3 (Data Migration Team)

Rounds

4

YOE

4

Timeline

  • Round 1 (Coding): March 20
  • Round 2 (HM): March 24
  • Round 3 (Real-world problem): March 26
  • Round 4 (HLD): March 27
  • Offer call: March 31
  • Offer letter: April 2
  • Total: ~2 weeks end-to-end

Round 1 — Coding (60 min)

Problem: Design a versioned datastore with PUT and GET operations.

  • PUT(docId, contents, timestamp) — stores versioned content
  • GET(docId, timestamp) — returns content at or just before the given timestamp
  • PUTs can arrive out of timestamp order

My approach: HashMap mapping docId to a BST of (timestamp → content). GET becomes a floor query on the BST. Since Go doesn't have a native self-balancing BST, I implemented it with a basic BST.

Ran through test cases — worked correctly. Discussed trade-offs (sorted array + binary search vs BST vs skip list).

Result: Moved to next round.

Round 2 — Hiring Manager (60 min)

This went extremely well. The HM was genuinely interested in a project I'd built at my current company. He actually explored the feature live during the interview.

The technical deep dive covered:

  • Architecture and design decisions
  • How I handled edge cases in production
  • Performance characteristics and scaling considerations
  • Team structure and my role/ownership

Followed by standard behavioral:

  • Why MongoDB?
  • How I handle disagreements in code reviews
  • A time I delivered under tight constraints

Key takeaway: Having a project you can demo live and talk about for 30+ minutes with genuine depth is incredibly powerful. This round basically carried my candidacy.

Round 3 — Real-world Problem (60 min)

Interviewer was based in Canada. The problem was domain-relevant (data migration team):

Problem: Design a verifier process for data migration. Monitor replication lag, alert if data hasn't appeared in the secondary datastore within K seconds.

I proposed a solution with a HashMap tracking in-flight items + periodic sweep for alerting. Discussed event ordering challenges and scalability.

Self-assessment: Lean hire. I felt I didn't go deep enough on the edge cases (out-of-order events, verifier crash recovery). The interviewer had to prompt me on a couple of things I should've proactively addressed.

Round 4 — High-Level Design (60 min)

Interviewer was based in Sydney, super friendly.

Problem: Design a database migration platform for a company like TicketMaster transitioning from relational to NoSQL.

I asked a lot of clarifying questions:

  • Scale of data (TBs? PBs?)
  • Acceptable downtime / migration strategy (big bang vs incremental?)
  • Consistency requirements during transition
  • Rollback strategy

Covered:

  • Dual-write vs CDC (Change Data Capture) approaches
  • Schema mapping layer (relational → document model)
  • Validation and reconciliation
  • Cutover strategy with feature flags
  • Monitoring and alerting during migration

Interviewer seemed happy with the breadth and depth.

The Offer

Recruiter called on March 31:

  • Round 1, 2, 4: positive feedback
  • Round 3: not positive
  • But the excellent HM round feedback tipped the decision in my favor

Offer letter came on April 2.

Tips for MongoDB SWE-3

  1. Have a killer project story — one you can talk about for 30 minutes with genuine technical depth. This can carry your entire candidacy if the HM loves it.
  2. Coding round is practical, not LeetCode — they ask real-world data structure design problems, not algorithm puzzles. Think: build a system component.
  3. Domain awareness helps — I was interviewing for the data migration team. Knowing basics of CDC, replication, eventual consistency helped in Rounds 3 and 4.
  4. Ask clarifying questions in HLD — the interviewer noted this positively. Don't dive into solutioning before understanding scope.
  5. One weak round doesn't kill you — if other rounds are strong enough (especially HM), they'll still roll out the offer.
  6. Go's lack of TreeMap/sorted structures — be prepared to implement or discuss alternatives if you're coding in Go.

Join 500+ engineers

Weekly interview questions + comp data insights. No spam. Unsubscribe anytime.

Powered by Substack. Your email is safe.