Interview experience at @RazorPay SDE II

razorpay logo
razorpay
· SDE 2
February 2, 2026 · 14 reads

Summary

I interviewed for an SDE 2 position at Razorpay. I performed well in the Low-Level Design and Coding round by designing an ATM machine, but struggled significantly in the System Design round when asked to design WhatsApp, ultimately leading to my rejection.

Full Experience

Round 1 – Low Level Design + Coding (LLD)

Problem: Design and implement an ATM Machine

What was covered:

  • Complete LLD with proper class design (ATM, BankAccount, Card, Transaction, CashDispenser, etc.)
  • Implemented core flows:
    • Card validation & PIN authentication
    • Balance enquiry
    • Cash withdrawal
    • Transaction status handling
  • Handled corner cases:
    • Insufficient balance
    • Insufficient cash in ATM
    • Invalid PIN / blocked card
    • Transaction rollback scenarios
    • No duplicate transaction
    • Mutex lock
  • Focused on clean, readable code and extensibility
  • Discussed how the design can be scaled or modified (adding new transaction types)

Feedback: Interviewer was satisfied with the approach, code quality, and edge-case handling.
Verdict: Strongly recommended for next round


Round 2 – System Design (HLD)

Problem: Design WhatsApp

Discussion areas:

  • High-level components:
    • Client (Mobile App)
    • Backend services
    • Database & message storage
    • Basic message flow
  • Discussed one-to-one messaging at a high level
  • Talked about some trade-offs related to storage and scalability

Where I struggled:

  • Couldn’t clearly explain group messaging architecture
  • Missed deeper discussion on:
    • Message fan-out strategies
    • Ordering guarantees
    • Handling large groups efficiently
    • Read receipts & delivery acknowledgements
    • Trade-offs between push vs pull models

Verdict: Rejected

Interview Questions (2)

1.

Design and Implement an ATM Machine (LLD)

System Design·Hard

Design and implement an ATM Machine. This LLD round covered complete low-level design with proper class design including ATM, BankAccount, Card, Transaction, CashDispenser, etc. I implemented core flows such as Card validation & PIN authentication, Balance enquiry, Cash withdrawal, and Transaction status handling. I also handled corner cases including insufficient balance, insufficient cash in ATM, invalid PIN / blocked card, transaction rollback scenarios, no duplicate transactions, and mutex lock. The focus was on clean, readable code and extensibility, discussing how the design can be scaled or modified (adding new transaction types).

2.

Design WhatsApp (HLD)

System Design·Hard

Design WhatsApp. The discussion areas included high-level components such as Client (Mobile App), Backend services, Database & message storage, and basic message flow. I discussed one-to-one messaging at a high level and talked about some trade-offs related to storage and scalability.

Preparation Tips

My strength was in LLD, object-oriented design, and implementation. However, this interview highlighted a clear gap in my understanding of distributed systems, real-time messaging systems, group chat scaling, and related trade-offs. I need to focus my future preparation on these areas to improve my system design skills.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!