Skip to main content

36 docs tagged with "system-design"

View all tags

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.

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.

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.

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.

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.

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.

Introduction to the ELK Stack

A comprehensive overview of the ELK Stack (Elasticsearch, Logstash, Kibana) and Beats — covering roles, system architecture, data flow, and primary use cases.

KRaft vs ZooKeeper: Kafka Metadata Architecture

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

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.

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.

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 complete guide to the Saga Pattern — from real-world analogies for beginners to choreography vs orchestration internals, compensating transactions, idempotency, state machine design, and failure recovery for senior engineers.

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.

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.