Hi, I'm Mukul 👋
Software developer writing about technology, programming, book reviews, and tools I build. Welcome to my corner of the internet.
Latest Posts
-
Zero-Downtime Deployments: Blue-Green, Canary, and Rolling Strategies
A comparison of blue-green, canary, and rolling deployment strategies for shipping code without downtime, including rollback speed and infrastructure cost.
-
Write-Ahead Logging: How Databases Recover from Crashes
How write-ahead logging lets databases guarantee durability and recover cleanly from crashes, covering the WAL protocol, checkpoints, and replication.
-
Wireshark for Developers: Reading and Debugging Network Traffic
A practical guide to using Wireshark to debug network issues, covering capture filters, display filters, the TCP handshake, and inspecting TLS and HTTP traffic.
-
Web Scraping with Python: Requests, BeautifulSoup, and Playwright
A practical tutorial on web scraping in Python, covering static HTML parsing with Requests and BeautifulSoup and JavaScript-rendered pages with Playwright.
-
VPNs Explained: How WireGuard Works Under the Hood
How WireGuard works under the hood, covering its cryptographic handshake, key-based peer identity, and why it's simpler and faster than IPsec and OpenVPN.
-
How the TLS Handshake Works Step by Step
A step-by-step breakdown of the TLS 1.3 handshake, covering key exchange, certificate verification, and how a symmetric session key gets established.
-
System Design: Designing a Task Queue and Job Scheduler
How to design a background task queue and job scheduler, covering worker pools, retries with backoff, priority queues, and scheduled/delayed execution.
-
System Design: Building a Search Engine with Inverted Indexes
How full-text search engines work under the hood, covering inverted indexes, tokenization, ranking with TF-IDF and BM25, and scaling with sharding.
-
System Design: Building a Real-Time Leaderboard with Redis
How to build a real-time leaderboard using Redis sorted sets, covering rank queries, ties, pagination, and scaling beyond a single instance.
-
System Design: Building a Real-Time Chat Application
A system design walkthrough of building a real-time chat application, covering WebSockets, fan-out strategies, presence, and message ordering.