Skip to main content

77 docs tagged with "System Design"

View all tags

API Composition

Deep dive into the API Composition pattern — parallel fan-out with CompletableFuture and virtual threads, partial response degradation, the N+1 composition problem, batch APIs, and comparison with CQRS.

API Design — REST, gRPC & GraphQL

A complete guide to API design — REST principles, gRPC, GraphQL, pagination, rate limiting, idempotency, versioning, security, API gateway patterns, and production observability. Beginner through senior depth.

Backend for Frontend (BFF)

Deep-dive into the Backend for Frontend pattern — aggregation mechanics, parallel fan-out, GraphQL BFF, OAuth Token Handler, response shaping, caching strategies, observability, and production failure modes for senior Spring Boot engineers.

Blue-Green Deployment

Deep dive into Blue-Green Deployment — zero-downtime releases, instant rollback, Kubernetes implementation, database migration compatibility (expand-contract), CI/CD pipeline integration, and comparison with canary and rolling updates.

Bulkhead Pattern

Comprehensive guide to the Bulkhead pattern — Thread Pool vs Semaphore isolation internals, Resilience4j configuration, pool sizing heuristics, integration with Circuit Breaker and Rate Limiter, observability, and production failure modes.

Caching Strategies

In-depth guide to caching strategies including cache-aside, write-through, write-behind, eviction policies, cache stampede prevention, hotkeys, Redis data structures, and multi-level caching.

Change Data Capture (CDC)

Comprehensive guide on Change Data Capture (CDC), detailing how it works, alternatives comparison, implementation patterns with Debezium and Spring, and deep dives for senior engineers.

Circuit Breaker Pattern

Deep-dive into the Circuit Breaker pattern — state machine internals, sliding window mechanics, Resilience4j configuration, bulkhead integration, fallback strategies, observability, and production failure modes for senior Spring Boot engineers.

Cognizant 3 Years Interview Experience | Java Spring Boot

A detailed collection of real interview questions and answers from a Cognizant Java Developer interview for a candidate with 3 years of experience. Covers Spring Boot, Microservices, Performance Optimization, and System Migration.

Common OS Interview Questions

Comprehensive collection of operating systems interview questions with detailed answers, covering all major topics from processes to Linux internals.

Common System Design Interview Questions

A comprehensive question bank for system design interviews covering classic system design problems, behavioral questions, and discussion frameworks for FAANG-level interviews.

Contract Testing

Complete guide to Consumer-Driven Contract Testing in microservices, detailing Pact framework integration, CI/CD setup, and trade-offs.

CQRS & Event Sourcing

Comprehensive guide on Command Query Responsibility Segregation (CQRS) and Event Sourcing, detailing architecture, implementation patterns, comparisons with alternatives, and deep dives for senior engineers.

Database Connection Pooling

A complete guide to database connection pooling — how connections work, pool mechanics, HikariCP tuning, pool sizing formulas, failure modes, PgBouncer, RDS Proxy, and production observability. Beginner through senior depth.

Database per Service

Technical guide to the Database-per-Service pattern, comparing data access options like API Composition, CQRS, and transaction management.

Dead Letter Queue (DLQ) Pattern

A comprehensive guide to the Dead Letter Queue (DLQ) pattern — covering poison pill handling, retry strategies, alternatives comparison, AWS SQS / Kafka / RabbitMQ implementations, and production deep dives for senior engineers.

Deployment Strategies

Comprehensive guide to zero-downtime deployment strategies — Rolling, Blue-Green, Canary, Shadow, Feature Flags, and A/B Testing — with Kubernetes configs, database migration patterns, observability, and rollback runbooks.

Distributed Tracing

Deep dive into Distributed Tracing for microservices using OpenTelemetry, W3C TraceContext, Spring Boot 3 Micrometer, and Jaeger.

Distributed Transactions: 2PC vs. Saga Pattern

Master guide to distributed transactions in microservices — Two-Phase Commit (2PC), Saga Pattern (Choreography vs. Orchestration), Transactional Outbox + CDC, and NewSQL architectures.

Elasticsearch & The ELK Stack Overview

A comprehensive architectural overview of Elasticsearch and the ELK Stack — the book index analogy, inverted index mechanics, BM25 relevance scoring, typo tolerance, aggregations, and the dual-storage pattern.

Envoy Proxy

Complete guide to Envoy Proxy, its architecture, dynamic configuration via xDS API, static setups, and system-design benefits.

Event-Driven Microservices

In-depth guide to Event-Driven Microservices, covering domain events, event types (notification vs carried-state vs sourcing), choreography sagas, transactional outbox pattern, schema evolution, ordering, idempotency, and Kafka setups.

Externalized Configuration

Deep dive into Externalized Configuration — 12-Factor App principle III, Spring Cloud Config Server with Git backend, hot-reload via Spring Cloud Bus, Kubernetes ConfigMaps/Secrets, HashiCorp Vault, and configuration hierarchy.

Feature Toggles (Feature Flags)

Deep dive into Feature Toggles — 4 toggle types, trunk-based development, percentage rollout, A/B testing, LaunchDarkly vs DB-backed implementation, toggle debt, and testing strategies.

Handling Large Blobs & Object Storage

Senior-level patterns for storing and delivering large binary objects (images, videos). Covers object storage mechanics, chunked uploads, CDN delivery, and presigned URLs.

Indexing & Query Optimization

Deep dive into database indexing mechanisms — covering disk I/O, B-Trees, hash indexes, composite index design, geospatial indexing, inverted indexes, EXPLAIN analysis, and Spring/JPA performance.

KRaft vs ZooKeeper: Kafka Metadata Architecture

Comprehensive guide comparing Apache Kafka's legacy ZooKeeper architecture with the modern KRaft (Kafka Raft) metadata mode — covering internal mechanics, failure scenarios, Strimzi Kubernetes deployment, migration strategies, and production deep dives for senior engineers.

Kubernetes Networking

Comprehensive guide to Kubernetes networking concepts, including Container Network Interface (CNI), Service Types, Kube-proxy, and Ingress.

Log Aggregation

Comprehensive guide to the Log Aggregation pattern — ELK/EFK stack, structured logging, MDC enrichment, Spring Boot implementation, Loki/Grafana alternative, alerting, and production gotchas.

Managing Long-Running Tasks

A complete guide to managing async long-running operations — from the core async job pattern for beginners to task state machines, worker reliability, distributed scheduling, SSE/WebSocket progress, and production observability for senior engineers.

MCP vs API & GenAI vs Agentic AI vs AI Agents

A complete architectural guide to the Model Context Protocol (MCP) vs traditional APIs, and the 3 distinct layers of modern AI systems — Generative AI, Agentic AI, and Autonomous AI Agents.

Media Streaming Pipelines, DRM & Modern Production Testing

Deep dive into media streaming systems and production testing — video chunk transcoding pipelines, Adaptive Bitrate (ABR), Web Video Playback (CMAF, MSE, LL-HLS), DRM (Widevine, FairPlay, EME/CDM), on-the-fly image resizing, open-model k6 load testing with coordinated omission prevention, and Statsig CUPED experimentation.

Microservice Chassis

Deep dive into the Microservice Chassis pattern — building a Spring Boot auto-configuration starter that standardizes logging, tracing, error handling, health checks, security headers, and Resilience4j defaults across all services.

Nginx Internals & Architecture

Comprehensive deep dive into Nginx internals — Master-Worker architecture, epoll/kqueue event loop, thread pools, connection lifecycle, upstream proxying, load balancing, SSL/TLS termination, HTTP/2, caching, rate limiting, and production tuning.

Phase 3 — System Design

The **System Design phase** translates approved requirements into a detailed technical blueprint. It defines the architecture, component interactions, data.

Proximity Search & Geospatial Indexes

A comprehensive guide to proximity search and geospatial indexing — covering spatial trees, encoded key indexes, production Java/Spring implementation, and senior deep dives on trade-offs and failure modes.

Raft Consensus Algorithm

A comprehensive guide to the Raft Consensus Algorithm — covering leader election, log replication, safety guarantees, and how it is implemented in Apache Kafka's KRaft metadata mode.

Rate Limiting

A complete guide to rate limiting — from beginner fundamentals to senior-level distributed design. Covers all algorithms, Redis implementations, decision frameworks, failure modes, and production patterns.

Rate Limiting Algorithms

A comprehensive guide to rate-limiting algorithms, including Token Bucket, Leaky Bucket, Fixed Window, Sliding Window Log, and Sliding Window Counter. Covers workflow mechanics, trade-offs, and distributed scaling.

Real-World Case Studies: Petabyte Data Stores & Zero-Downtime Migrations

Comprehensive Staff-level architectural breakdown of 8 landmark petabyte storage engines and zero-downtime database migrations — Dropbox Magic Pocket, Discord ScyllaDB, YouTube Vitess, GitHub MySQL 8, Pinterest 64-bit sharding, Instagram Rocksandra, Figma multiplayer, and WhatsApp Erlang.

Retry Pattern

Comprehensive guide to the Retry pattern in microservices — transient vs. persistent errors, exponential backoff, jitter algorithms, idempotency, Resilience4j, distributed retry coordination, and integration with Circuit Breaker and Bulkhead.

Reverse Proxy vs. Load Balancer vs. API Gateway

A comprehensive guide comparing reverse proxies, load balancers, and API gateways — their differences, internal mechanics, architectural roles, alternatives, and production deep dives for senior engineers.

Saga Pattern (Distributed Workflows)

A comprehensive guide to the Saga Pattern — from core concepts for beginners to choreography vs orchestration internals, state machine design, idempotency, compensating transactions, temporal coupling, failure taxonomy, and production observability for senior engineers.

Service Decomposition

Strategic guide to microservice decomposition, applying Domain-Driven Design (DDD), high cohesion, loose coupling, and avoiding the distributed monolith.

Service Discovery

Detailed guide to Service Discovery in microservices, comparing Client-side vs Server-side discovery, Spring Cloud Eureka vs Kubernetes CoreDNS/Kube-proxy.

Service Mesh

Deep-dive into Service Mesh architecture — Envoy internals, xDS API, mTLS certificate lifecycle, traffic management patterns, observability, Spring Boot integration, and production failure modes for senior engineers.

Sharded Counters & Real-Time Leaderboards at Scale

Deep dive into distributed counting and ranking architectures — hot-key mitigation, sharded counters, CRDT PN-Counters, HyperLogLog, and Redis Sorted Set (ZSET) skiplist leaderboards with tie-breaking bit-packing.

Sidecar Pattern

Deep-dive into the Sidecar pattern — Linux namespace internals, Kubernetes native sidecar lifecycle, PgBouncer connection pooling, Vault secrets injection, config hot-reload, Spring Boot integration, and production failure modes for senior engineers.

Strangler Fig Pattern

Guide to the Strangler Fig pattern for migrating monoliths to microservices. Details bounded context mapping, Anti-Corruption Layer (ACL) Spring Boot code, dual-writing data sync, eventual consistency, and migration gotchas.

System Design Interview Framework

A structured, step-by-step framework for approaching any system design interview question. Covers requirements gathering, estimation, high-level design, deep dives, and common pitfalls.

System Design Knowledge Base

A comprehensive knowledge base for system design patterns, architectural principles, scalability strategies, and interview preparation for software engineers.

Time, Ordering & Distributed Unique ID Generation

Deep dive into distributed time synchronisation, physical clock drift, TrueTime, Lamport timestamps, Vector Clocks, Hybrid Logical Clocks (HLC), and distributed ID schemes (UUIDv7 RFC 9562 vs Snowflake vs UUIDv4) with B-Tree storage implications.

Transactional Outbox Pattern

A complete guide to the Transactional Outbox Pattern — from the Dual-Write problem for beginners to CDC vs polling internals, at-least-once guarantees, ordering semantics, and production monitoring for senior engineers.

Two-Phase Commit (2PC) & Three-Phase Commit (3PC)

A comprehensive guide to Two-Phase Commit (2PC) and Three-Phase Commit (3PC) — from real-world analogies for beginners to WAL internals, failure modes, and XA implementation for senior engineers.

Webhooks

Deep dive into Webhooks — event-driven HTTP callbacks, HMAC-SHA256 signature verification, idempotency, retry with exponential backoff, delivery guarantees, building a webhook delivery system, and security best practices.

Welcome

Engineering knowledge base for practical learning, interview preparation, real-world system design, DSA training, banking systems, and cloud certification.

What Actually Breaks When Your App Gets Popular (System Design Evolution)

Comprehensive breakdown of failure modes when applications scale from a single server to millions of users — session traps, connection pool exhaustion, replication lag, cache stampede, synchronous HTTP bottlenecks, AI vector scaling, and the architectural judgment rubric based on JavaScript Mastery fundamentals.