LLD Series: Interview Prep Series: Start Here (DSA, HLD and LLD for Visa, Mastercard, NPCI, Amex, PayU)
Overview
- 1. What this series is
- 2. How to deal with the jargon
- 3. Suggested order
- 4. How to practise
- 5. Post list
Part of the Interview Prep series. Dotted-underline words are glossary terms: hover for the meaning or open the Glossary. Track your progress on the Interview Prep tracker. Series index: Start here.
1. What this series is
Three tracks, one order: DSA (patterns), HLD (system design fundamentals) and LLD (low-level design with runnable Java). Use the Interview Prep tracker to tick items off, see your progress per track, and jump to the next thing to study. The rest of this post explains the LLD part in detail.
A complete, runnable-code preparation path for low-level design (LLD) and machine-coding interviews at product and payments companies: Visa, Mastercard, NPCI, American Express and PayU. Each design post follows the same 10-part structure:
- Problem statement and who asks it
- Requirements clarification
- Entities and class diagram
- Design patterns and why (and what was rejected)
- Complete Java code with real, pasted output from running it
- Flow walkthroughs
- Extensibility
- Concurrency and edge cases
- Follow-up questions with model answers
- Red flags and a mini rubric
All the Java code was compiled and executed; the output you see in the posts is the real output.
2. How to deal with the jargon
Interview material is full of abbreviations. In this series:
- A word with a dotted underline is a glossary term. Hover it for the full form and a one-line meaning; click it to open the full entry.
- Open the Glossary tab inside Interview Prep and search anything: QPS, L4, L7, TTL, CAS, idempotency, 3DS, and more. It filters as you type and can be narrowed by category.
- If your data structures and Big-O are rusty, read the beginner primer first.
3. Suggested order
Week 0 - foundations
- DSA and Java basics primer (for beginners)
- OOP and SOLID
- Design patterns
- Concurrency for LLD
- The interview framework (how to spend 60 minutes)
Week 1 - classic designs 6. Parking Lot 7. Vending Machine 8. ATM 9. Elevator system
Week 2 - money designs (the ones fintech interviewers love) 10. Splitwise 11. Digital Wallet 12. Payment Gateway with routing, retries and webhooks
Week 3 - infrastructure-style designs 13. Rate limiter 14. LRU/LFU cache 15. Notification service 16. Logger framework 17. Pub-sub 18. BookMyShow 19. Hotel booking
Final - the interview questions bank, then redo two designs from a blank file with a timer.
4. How to practise
- Copy each design into an IDE, run it, then delete it and rewrite from memory within 60 minutes.
- After coding, answer the follow-up questions out loud. Fintech interviewers spend half the time there.
- Score yourself with the mini rubric at the end of each post.
5. Post list
- DSA and Java Basics for LLD Interviews: A Gentle Primer for Beginners
- DSA Patterns Roadmap for Beginners: 9 Patterns With Runnable Java
- HLD Fundamentals for Beginners: Estimation, Building Blocks and a Payments Lens
- OOP and SOLID (Payments Flavored)
- Design Patterns That Actually Come Up in LLD Rounds
- Java Concurrency Essentials for LLD Rounds
- LLD Interview Framework (45-60 minute round)
- Parking Lot (Low-Level Design)
- ATM (Low-Level Design)
- Splitwise / Expense Sharing (Low-Level Design)
- Digital Wallet (Low-Level Design)
- Vending Machine (Low-Level Design)
- Payment Gateway with Routing, Retries and Webhooks (Low-Level Design)
- Rate Limiter (Low-Level Design)
- LRU / LFU Cache (Low-Level Design)
- Elevator System (LLD)
- BookMyShow (Movie Ticket Booking) (LLD)
- Notification Service (Low-Level Design)
- Logger Framework (Low-Level Design)
- In-Memory Pub/Sub (Kafka-lite) - LLD
- Hotel Booking System - LLD
- LLD / Java / OOP Interview Questions Bank