Search
Lessons (40)
- Backend Languages: Node.js, Go, Python & Rust
… thousands of goroutines"] S{{Go scheduler}} -- G1[goroutine] & G2[goroutine] & G3[goroutine] & G4[goroutine …] S -- C1[CPU core …
- Distributed Coordination: Consensus, Heartbeats and Gossip
… leader agreement, heartbeats, gossip membership and checksums solve different failure questions](/img/system-design-l6/coordination.svg) Problem …
- YAGNI: You Aren't Gonna Need It
… 🩳 👕 🪥"] YAGNI = You Aren't Gonna Need It. It comes from Extreme Programming (XP): 📘 "Always implement things …
- What Are Design Patterns?
… 4. Name it in code. PaymentStrategy or OrderEventEmitter tells readers what's going on. mermaid flowchart LR A …
- Comments & Formatting
… const PAYMENT MAX RETRIES = 3; That second comment is gold: no amount of good naming could tell you …
- Deploying & Operating Microservices
… the curtain drops for a moment, the crew swaps pieces, and the show goes on. The audience barely …
- Authentication, Authorization & API Security
… Click "Log in with Google" App- U: redirect to Google (+ PKCE challenge) U- G: log in + consent G …
- Which Pattern Do I Need?
… when patterns go wrong Anti-pattern What it looks like Better --- --- --- Patternitis AbstractSingletonProxyFactoryBean for a one-off task …
- Graphs: BFS & DFS
… General graphs can have cycles , many paths and disconnected parts . Graphs are everywhere Real world Nodes Edges --- --- --- Google …
- Meaningful Names
… If it says winter-jackets , you don't. ![Good names are labels that tell you what is inside …
- Observability: Logs, Metrics & Traces
… Learn the three pillars, the golden signals, SLOs and OpenTelemetry. The big idea A car dashboard shows your …
- Normalization & Denormalization
… For normal application schemas, reaching solid 3NF plus explicit constraints is usually the practical goal. Use BCNF when …
- REST vs GraphQL vs gRPC
… fast, typed calls between services gRPC (from Google) lets one service call a function on another as if …
- JavaScript Essentials: Event Loop, Closures & this
… the callback goes to the task queue (even with 0 ms). 3. .then : the callback goes to the …
- Recursion & Backtracking
… Dead end? Go back to the last junction and try the next path. Keep going until you find …
- KISS: Keep It Simple, Stupid
… Learn to spot over-engineering and choose boring, obvious code. The big idea A Rube Goldberg machine uses …
- MVC, MVP & MVVM
… void; goToDashboard(): void; } class LoginPresenter { constructor(private view: LoginView, private auth: AuthService) {} async onLoginClicked(email: string, password: string …
- Clean Error Handling
… Code that hides errors does the same thing. mermaid flowchart LR E[🔥 Something goes wrong] -- Q{How does …
- Next.js Rendering: CSR, SSR, SSG, ISR & Server Components
… fresh page for the next visitor ✅ Static speed with fresh-enough data. Good for: e-commerce product pages …
- Design a File Storage Service
… multipart uploads go to object storage; the API owns metadata, sharing and versioned changes](/img/system-design-l6 …
- Why Kubernetes?
… steering a ship). "K8s" = K + 8 letters + s. Google open-sourced it in 2014, based on its internal …
- Architecture Patterns at Scale
… img/system-design-l6/architecture-patterns.svg) Style Good fit Main cost --- --- --- Client-server Most products starting out …
- Kubernetes Cluster Architecture
… menus, how many cooks each branch needs, where new staff go. It keeps the official records. - Branches (the …
- Big Data: ETL, Warehouses and Streaming
… A data lake holds raw/flexible data; a warehouse optimizes governed analytical queries; a lakehouse combines lake storage …
- Proxies, APIs and Real-Time Protocols
… img/system-design-l6/protocols-realtime.svg) Need Good starting point Trade-off --- --- --- Public resource API REST over …
- Trees & Binary Search Trees
… 7 < 8 → go left · 7 3 → go right · 7 6 → go right · found! Each step throws away half …
- Behavioral Patterns I: Observer, Strategy, Command, State
… Strategy 🗺️ Analogy: Google Maps offers routes by car, bike, walking or transit. Same goal (get from A …
- Layered (N-Tier) Architecture
… business logic depends on the database, pass-through "sinkholes", and features spread across all layers. - A good simple …
- Docker & Containers
… Your app, its runtime (Node 22), libraries and config go into one standard box that runs identically on …
- Services & Ingress
Pods come and go, so how does traffic find them? ClusterIP, NodePort and LoadBalancer Services, cluster DNS, Ingress …
- Serverless Architecture
… as small functions triggered by events AWS Lambda, Google Cloud Functions, Azure Functions, Cloudflare Workers, Vercel Functions BaaS …
- Scaling, Load Balancing & Rate Limiting
… failed health check"] Algorithms Algorithm How it picks Good when --- --- --- Round robin A, B, C, A, B, C …
- Frontend Performance & Core Web Vitals
… Google measures exactly these three feelings with the Core Web Vitals . ![The three Core Web Vitals and their …
- Premiere-Night Video Streaming
… system-design-l6/premiere-streaming.svg) Plane Handles Goal --- --- --- Control Auth, entitlement, manifest, progress Small, stateless, scalable APIs …
- Caching & Redis
… when the cache is full Memory is limited, so something must go: Policy Evicts Good for --- --- --- LRU (Least …
- The L6 System-Design Thinking Loop
… Explain metrics, mitigation, and the durable fix. 💡 A good trade-off is specific: “I accept a few seconds …
- How a Web Request Works
… faster setup, no head-of-line blocking Where time goes A typical 200 ms page request might be …
- Replication, Partitioning & Sharding
… range for geography, or list for known groups. Good partitioning enables pruning: a March query reads March partitions …
- What Is Apache Kafka?
… A new reader can start from today's edition, or go back and read everything from the first …
- Binary Search
… 23 → go right"] -- s2["lo=5, hi=9 → mid=7 (56)<br/ 56 gt; 23 → go left"] s2 …