System design interviews பெரிய அளவிலான systems-ஐ வடிவமைக்கும் உங்கள் திறனை மதிப்பிடுகின்றன — இவை mid/senior roles-க்கு பொதுவானவை. வெற்றி ஒரு structured approach-ஐ உள்ளடக்குகிறது: தேவைகளை தெளிவுபடுத்துதல், high level-ல் வடிவமைத்தல், விவரங்களில் ஆழ்ந்து செல்லுதல், மற்றும் trade-offs மற்றும் scaling பற்றி விவாதிப்பது.
ஒரு structured approach
1. CLARIFY requirements → functional (what it does) + non-functional (scale, latency,
availability); ask about scope, users, constraints (don't assume — narrow the problem)
2. ESTIMATE scale → users, requests/sec, data volume (informs the design)
3. HIGH-LEVEL design → main components and data flow (API, services, database, cache,
etc.); draw the architecture
4. DEEP DIVE → detail key components; data model; specific challenges
5. SCALE & TRADE-OFFS → identify bottlenecks; discuss scaling (caching, load balancing,
sharding, replication); trade-offs of choices
