It’s not just about “designing a system” — it’s also about how you can augment traditional designs with AI smartness when required.

Low-Level Design (LLD) has become the bread and butter of interviews, regardless of experience, language, or company level. Whether it’s a startup or a FAANG company, everyone wants to see how well you can think in terms of modularity, scalability, and real-world abstractions. And in today’s GenAI-infused world, it’s not just about “designing a system” — it’s also about how you can augment traditional designs with AI smartness when required.

Let’s start with a master list of the most frequently asked and high-impact LLD questions across companies like Amazon, Google, Microsoft, Flipkart, Uber, and now OpenAI or any AI-driven company.

1. Design a Parking Lot

  • Model different types of parking spots (compact, large, handicapped, etc.)
  • Handle multiple vehicle types (car, bike, truck) with varying space requirements
  • Design entry and exit flow, including ticket generation and payment
  • Consider concurrency — multiple cars entering and exiting simultaneously
  • Extend for multi-level or multi-zone parking structures

2. Design a Library Management System

  • Define entities like Book, User (Librarian, Member), Catalog, and LibraryCard
  • Include operations such as search, checkout, return, renew, and reserve
  • Handle fines for late return and book hold queue
  • Add features like digital catalog browsing, notifications for due dates
  • Think about scalability: thousands of users and books in a large system

3. Design an Elevator System

  • Model elevator state (idle, moving up, down, loading)
  • Support multiple elevators with coordination logic (e.g., nearest elevator selection)
  • Handle user requests from floors and within elevators
  • Introduce prioritization (VIP, emergency mode, peak hours)
  • Discuss concurrency and scheduling of movements

4. Design a Snake and Ladder Game

  • Represent the board, players, snakes, ladders, and dice
  • Maintain game state turn-by-turn
  • Handle multiple players in a fair rotation
  • Make the design extensible for custom boards or other board games
  • Consider UI integration and separation of game logic from rendering

5. Design Splitwise

  • Handle user groups, expense creation, and balance calculation
  • Support various split types (equal, exact amount, percentage)
  • Keep track of who owes whom and compute simplified debt graphs
  • Extend to include settlement and payment tracking
  • Consider scalability if extended to a fintech app

6. Design a Rate Limiter

  • Explain and implement token bucket, leaky bucket, or sliding window algorithm
  • Apply user-based or API key-based throttling
  • Discuss where this would be deployed (API gateway, microservice layer)
  • Show how rate limits reset over time
  • Handle distributed environments (using Redis, for example)

7. Design a Notification System

  • Design producers and consumers for email, SMS, and push notifications
  • Use queuing mechanism to support async and retries
  • Model templates, prioritization, and scheduling
  • Include delivery reports and error tracking
  • Discuss how to throttle notifications per user

8. Design an ATM Machine

  • Define components like CardReader, Keypad, CashDispenser, Screen
  • Model transactions: withdrawal, deposit, transfer, balance inquiry
  • Include authentication using PIN and user session management
  • Handle money denomination logic (e.g., prefer large notes first)
  • Ensure fail-safe handling for partial failures (e.g., cash not dispensed but account debited)

9. Design a Vending Machine

  • Model product selection, payment, inventory, and dispensing mechanisms
  • Implement state machine for selection, payment, dispensing, and idle
  • Support refunds and restocking
  • Add concurrency safety when multiple users interact simultaneously
  • Extend to accept multiple payment types

10. Design a Movie Ticket Booking System

  • Model theaters, screens, seats, shows, and time slots
  • Support seat locking and booking with concurrency handling
  • Enable search by location, movie, or time
  • Handle promotions, cancellations, and refunds
  • Prevent race conditions and overbooking using locking mechanisms

11. Design a Ride Sharing App

  • Model real-time location tracking for users and drivers
  • Include request matching logic between rider and nearby drivers
  • Handle pricing (base fare, surge, distance/time-based)
  • Design trip lifecycle and historical trip tracking
  • Account for map integration and routing services

12. Design a Food Delivery App

  • Model users, restaurants, menus, orders, and delivery partners
  • Handle real-time status tracking (order received, prepared, out for delivery)
  • Match orders with nearby delivery agents based on ETA
  • Include payment processing and delivery rating
  • Consider multi-tenancy (thousands of restaurants and orders)

13. Design an Online Auction System

  • Design auctions, bidders, bids, timers, and product listings
  • Handle real-time updates for current highest bids
  • Manage concurrency for simultaneous bids
  • Support time-based auction expiration
  • Design winner selection and payment post-auction

14. Design a Scalable Chat Application

  • Model users, messages, conversations (1–1 and group)
  • Store chat history with pagination and search
  • Support online/offline presence, delivery status, and read receipts
  • Allow media/file attachments
  • Include end-to-end encryption as an optional discussion

15. Design a Collaborative Document Editor

  • Model document, user session, and version control
  • Support concurrent editing (using CRDTs or Operational Transforms)
  • Maintain access permissions (read-only, edit, comment)
  • Auto-save and history/version comparison
  • Integrate real-time cursor and edit indicators

16. Design a Stock Trading Platform

  • Model orders (limit/market), order book, users, and trades
  • Design matching engine with FIFO/LIFO strategies
  • Real-time price broadcasting to users
  • Handle trading rules and time windows
  • Discuss reliability and concurrency at scale

17. Design a News Feed System

  • Model users, posts, comments, and relationships (followers)
  • Feed generation using pull/push or hybrid model
  • Personalization logic using user behavior or preferences
  • Support infinite scroll and pagination
  • Cache hot or trending posts for performance

18. Design a Hotel Booking System

  • Model hotels, rooms, bookings, locations, and filters
  • Implement availability checking and locking for room selection
  • Support cancellations and refunds
  • Add payment and invoice handling
  • Ensure consistency under concurrent booking scenarios

19. Design a Personalized Content Recommender (GenAI-enhanced)

  • Represent users, preferences, content, and interaction history
  • Use collaborative filtering or content-based filtering as a base
  • Integrate GenAI for personalization and dynamic content generation
  • Store embeddings and use vector similarity for recommendations
  • Track and learn from user feedback to improve suggestions

20. Design an Interview Prep Chatbot

  • Define question banks, chat context, and session management
  • Integrate LLM for generating tailored answers
  • Support multi-turn conversation flow
  • Include fallback responses for irrelevant inputs
  • Allow feedback and learning mechanism for better answers

21. Design an AI-Based Customer Support System

  • Create a ticket management backend
  • Integrate LLM for initial response and classification
  • Enable agent handoff for complex queries
  • Store conversation history and escalation paths
  • Use user sentiment analysis to prioritize

22. Design a Smart Email Auto-Responder

  • Connect to email client and parse context of incoming mail
  • Use LLM to generate reply templates dynamically
  • Learn tone and preferences from previous replies
  • Include manual override and review before send
  • Track accuracy of responses over time for feedback

23. Design a Document Search System using RAG

  • Index documents using traditional + vector embeddings
  • Retrieve relevant chunks using similarity search
  • Pass chunks to LLM for answer generation
  • Model documents, chunks, metadata, and retrieval flow
  • Optimize for latency and relevance

24. Design a Resume Parser and Job Matcher

  • Parse resume fields using NLP (name, skills, experience, etc.)
  • Model job descriptions and tag required fields
  • Use LLM for semantic similarity scoring
  • Support filtering, ranking, and suggestions
  • Allow real-time updates as resumes or JDs change

25. Design an Intelligent Code Review Bot

  • Integrate with GitHub/GitLab CI pipelines
  • Use AST parsing and LLM to generate suggestions
  • Comment on code quality, style violations, and performance
  • Include confidence score per suggestion
  • Enable developer feedback for model improvement

26. Design an API Rate Limiter with Redis

  • Track request counts per user/IP with TTLs
  • Implement fixed window or sliding log logic
  • Use Redis atomic operations and expiry
  • Handle global vs per-endpoint rate limits
  • Ensure thread safety in distributed environments

27. Design a Watch History Tracker

  • Model video sessions, playbacks, and user profiles
  • Track watch progress per video and resume capability
  • Include history deletion and privacy controls
  • Sync across devices and user sessions
  • Extend to recommendation use cases

28. Design a Task Scheduler

  • Manage job definitions, triggers, and executions
  • Support delayed, recurring, and one-time tasks
  • Retry mechanism with exponential backoff
  • Log outcomes and notify failures
  • Design for distributed workers and high availability

29. Design an Audit Logging System

  • Model log events with metadata (who, what, when, where)
  • Write logs in immutable format and store securely
  • Support log filtering, searching, and archiving
  • Define retention policies and data lifecycle
  • Ensure logs cannot be tampered with (compliance)

30. Design a Request Tracing System

  • Generate and propagate trace IDs across services
  • Collect timing and call stack details in a trace store
  • Visualize trace graphs to detect latency bottlenecks
  • Support sampling and filtering of trace data
  • Integrate with existing observability stack (e.g., OpenTelemetry)