vishal maurya

LLD Series: Interview Prep Series: Start Here (DSA, HLD and LLD for Visa, Mastercard, NPCI, Amex, PayU)

Overview

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:

  1. Problem statement and who asks it
  2. Requirements clarification
  3. Entities and class diagram
  4. Design patterns and why (and what was rejected)
  5. Complete Java code with real, pasted output from running it
  6. Flow walkthroughs
  7. Extensibility
  8. Concurrency and edge cases
  9. Follow-up questions with model answers
  10. 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

  1. DSA and Java basics primer (for beginners)
  2. OOP and SOLID
  3. Design patterns
  4. Concurrency for LLD
  5. 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

  1. DSA and Java Basics for LLD Interviews: A Gentle Primer for Beginners
  2. DSA Patterns Roadmap for Beginners: 9 Patterns With Runnable Java
  3. HLD Fundamentals for Beginners: Estimation, Building Blocks and a Payments Lens
  4. OOP and SOLID (Payments Flavored)
  5. Design Patterns That Actually Come Up in LLD Rounds
  6. Java Concurrency Essentials for LLD Rounds
  7. LLD Interview Framework (45-60 minute round)
  8. Parking Lot (Low-Level Design)
  9. ATM (Low-Level Design)
  10. Splitwise / Expense Sharing (Low-Level Design)
  11. Digital Wallet (Low-Level Design)
  12. Vending Machine (Low-Level Design)
  13. Payment Gateway with Routing, Retries and Webhooks (Low-Level Design)
  14. Rate Limiter (Low-Level Design)
  15. LRU / LFU Cache (Low-Level Design)
  16. Elevator System (LLD)
  17. BookMyShow (Movie Ticket Booking) (LLD)
  18. Notification Service (Low-Level Design)
  19. Logger Framework (Low-Level Design)
  20. In-Memory Pub/Sub (Kafka-lite) - LLD
  21. Hotel Booking System - LLD
  22. LLD / Java / OOP Interview Questions Bank