Interview Tips
How to Approach LLD Interviews
A structured framework for tackling Low-Level Design interviews. Follow these steps to deliver a clear, impressive solution.
1Clarify Requirements (5 min)
Never jump into design. Start by asking questions to understand scope and constraints.
Questions to Ask
- What are the core use cases?
- Who are the actors (user types)?
- Any specific features to focus on?
- Scale considerations?
- Any constraints or limitations?
What to Clarify
- Scope: what's in vs out?
- Functional requirements only or system design too?
- Should I focus on specific components?
- Time available for the problem?
- Preferred programming language?
2Identify Core Classes (5 min)
List the main entities/nouns from your requirements. These become classes.
Example: Parking Lot
Core Entities
- ParkingLot
- ParkingFloor
- ParkingSpot
- Vehicle
Supporting
- Ticket
- Payment
- EntryPanel
- ExitPanel
Enums
- VehicleType
- SpotType
- TicketStatus
- PaymentMethod
3Define Relationships (5 min)
| Relationship | When to Use | Example |
|---|---|---|
| Inheritance | IS-A relationship | Car IS-A Vehicle |
| Composition | Part can't exist without whole | Floor PART-OF ParkingLot |
| Aggregation | Part can exist independently | Player in Team |
| Association | Uses/references | Ticket references Vehicle |
4Apply Design Patterns (5 min)
Singleton
One instance needed
ParkingLot, Database connection
Factory
Creating objects without specifying class
VehicleFactory, NotificationFactory
Strategy
Multiple algorithms for same task
Pricing strategies, Payment methods
Observer
Notify on state changes
Notifications, Event handlers
State
Behavior changes with state
Elevator, Vending Machine
Command
Encapsulate requests
Undo/redo, Transaction logging
5Write Code (15-20 min)
Don't try to write everything. Focus on:
- 1. Class definitions with key attributes
- 2. Main methods with logic
- 3. One or two patterns implemented fully
- 4. Key algorithm (e.g., find available spot)
Coding Tips
- Start with enums - quick wins, shows thoroughness
- Define interfaces first - shows abstraction thinking
- Use meaningful names - demonstrates clean code
- Add comments for complex logic - helps interviewer follow
- Talk as you code - explain your decisions
6Handle Follow-ups
Interview Follow-up Questions
Common follow-up questions interviewers ask
7LLD Interview Checklist
✓
Clarified requirements and scope✓
Identified core entities and enums✓
Defined class relationships✓
Applied relevant design patterns✓
Used SOLID principles✓
Wrote clean, readable code✓
Explained design decisions✓
Handled edge cases✓
Discussed extensibility✓
Answered follow-up questions confidently