All Posts

Page 1 of 24

Deep Dive on Elasticsearch: A System Design Interview Perspective
software-design

Deep Dive on Elasticsearch: A System Design Interview Perspective

“If you’re searching, filtering, or aggregating…

Deep Dive on Apache Kafka: A System Design Interview Perspective
software-design

Deep Dive on Apache Kafka: A System Design Interview Perspective

“Kafka is not a message queue. It’s a distributed…

Deep Dive on Redis: Architecture, Data Structures, and Production Usage
Deep Dive on API Gateway: A System Design Interview Perspective
REST API Design: Pagination, Versioning, and Best Practices
software-design

REST API Design: Pagination, Versioning, and Best Practices

Every time two systems need to talk, someone has…

Efficient Data Modelling: A Practical Guide for Production Systems
Deep Dive on Caching: From Browser to Database
software-design

Deep Dive on Caching: From Browser to Database

“There are only two hard things in Computer…

System Design Patterns for Real-Time Updates at High Traffic
System Design Patterns for Scaling Writes
software-design

System Design Patterns for Scaling Writes

In the companion article on scaling reads, we…

System Design Patterns for Managing Long-Running Tasks
software-design

System Design Patterns for Managing Long-Running Tasks

Introduction Some operations simply can’t finish…

System Design Patterns for Handling Large Blobs
software-design

System Design Patterns for Handling Large Blobs

Introduction Every non-trivial application…

Explaining SAGA Patterns with Examples
software-design

Explaining SAGA Patterns with Examples

In a monolith, placing an order is a single…