gaurav.ece.nitw@gmail.com

Why Do Interviewers Ask You to Draw Diagrams During System Design Rounds?

Why Do Interviewers Ask You to Draw Diagrams During System Design Rounds?

A complete, beginner-friendly guide to the real reason behind the whiteboard in a system design interview. Covers: a short history of the whiteboard round, why words alone fail, what interviewers are secretly evaluating, the core vocabulary (system design, architecture diagram, component, data flow), the anatomy of a great high-level diagram…

Read More
Architect-Case-Monolith

The Architect’s Case for the Monolith

A complete, beginner-to-advanced tutorial on when to stay with a monolith instead of splitting into microservices. Covers the one-house vs small-city analogy and the full 1990s-through-mid-2020s history (single monolith, SOA, microservices popularised at Netflix and Amazon, the industry-wide adoption boom, then the correction toward modular monoliths); the real motivations for…

Read More
How Do You Find a Bottleneck in a System?

How Do You Find a Bottleneck in a System?

A complete, beginner-to-advanced guide to finding the one slow component that limits a whole system: the honey-bottle analogy and why bottleneck hunting separates senior engineers from junior ones; five reasons systems develop bottlenecks over time (traffic growth, data growth, hidden feature work, contested shared resources, hardware limits); precise vocabulary (latency,…

Read More
Monolith vs Microservices

Monolith vs Microservices

A plain-language, ground-up guide to the biggest architecture decision most software teams ever make. Covers the history and motivation, core concepts (coupling, cohesion, bounded contexts, CAP, latency vs throughput), monolith and microservices architectures with worked bookstore examples, request lifecycles, honest advantages and trade-offs, performance and scalability, high availability and failure…

Read More
Synchronous vs Asynchronous Communication

Synchronous vs Asynchronous Communication

A complete, plain-language guide to synchronous versus asynchronous communication: introduction and a little history from single-machine programs to the modern internet, the exact problem the choice solves, the phone-call versus letter analogy, twelve core terms (client, server, request, response, blocking, non-blocking, callback, latency, throughput, message queue, event, coupling), what synchronous…

Read More