Low Level Design: Soft Delete vs Hard Delete Design
7 min read Deleting data is irreversible by default. Soft delete marks records as deleted without removing them from the database; hard delete […] Read article
Learn to design scalable, reliable systems that handle millions of users. System design interviews test your ability to architect real-world applications, considering tradeoffs, scalability, and best practices.
Core Topics:
Scalability: Load balancing, horizontal vs vertical scaling
Storage: Databases (SQL vs NoSQL), caching (Redis, Memcached)
Reliability: Replication, failover, disaster recovery
Performance: CDNs, caching strategies, database indexing
Common Design Questions:
Design URL shortener (bit.ly)
Design rate limiter
Design Twitter/Instagram feed
Design messaging system (WhatsApp)
Design file storage (Dropbox)
Interview Level: Senior engineers (L5+) at FAANG companies. Requires 3-5+ years experience to tackle effectively.
Preparation: Study system design patterns, understand distributed systems fundamentals, and practice mock interviews.
7 min read Deleting data is irreversible by default. Soft delete marks records as deleted without removing them from the database; hard delete […] Read article
6 min read The thundering herd problem occurs when many processes or threads simultaneously wake up to compete for the same scarce resource Read article
6 min read Pagination enables clients to retrieve large result sets page by page instead of in one response. Two primary approaches exist: Read article
4 min read Database indexes dramatically accelerate query performance by providing direct access paths to rows, avoiding full table scans. However, indexes consume Read article
6 min read The Write-Ahead Log (WAL) is the foundation of database durability and crash recovery. Every change to database state is first Read article
6 min read CRDTs (Conflict-Free Replicated Data Types) are data structures that can be updated independently and concurrently on multiple nodes without coordination, Read article
6 min read OAuth2 is an authorization framework that allows users to grant third-party applications limited access to their accounts without sharing passwords. Read article
4 min read Multi-Version Concurrency Control (MVCC) is the concurrency mechanism used by PostgreSQL, MySQL InnoDB, Oracle, and most modern databases to enable Read article
6 min read GraphQL is a query language for APIs where clients specify exactly the data they need and receive nothing more. Unlike Read article
6 min read WebSocket provides full-duplex, low-latency communication between a browser and server over a single persistent TCP connection. Unlike HTTP polling (client Read article
4 min read Geo-spatial indexing enables efficient queries on geographic data: finding restaurants within 1km, matching drivers to riders within 500m, showing events Read article
6 min read Full-text search finds documents matching natural language queries across large corpora. Unlike exact-match database queries (WHERE name = ‘foo’), full-text Read article
5 min read An audit log records a tamper-evident, chronologically ordered history of all significant actions in a system: who did what, when, Read article
3 min read gRPC is a high-performance RPC framework built on HTTP/2 and Protocol Buffers. It provides strongly-typed service contracts, efficient binary serialization, Read article
5 min read A real-time leaderboard ranks users or entities by a score that updates continuously. The core challenge is serving low-latency rank Read article