Blog

Thoughts on software development, AI, and technology

All
api
architecture
caching
databases
kafka
markdown
mdx
messaging
microservices
next.js
patterns
performance
portfolio
queues
react
real-time
redis
server-actions
system-design
typescript
websocket
February 26, 2026

Hello World: Building My Developer Portfolio

Welcome to my new blog! In this post, I share why I built this portfolio and what technologies power it.

next.js
react
mdx
portfolio
February 26, 2026

MDX là gì? Hướng dẫn từ A-Z cho Developer

Tìm hiểu MDX - sự kết hợp giữa Markdown và JSX. Hướng dẫn cài đặt, cấu hình và sử dụng MDX trong dự án Next.js.

mdx
next.js
react
markdown
February 25, 2026

System Design: Building a URL Shortener at Scale

A deep dive into designing a URL shortener like Bitly — covering hashing strategies, database choices, caching layers, and handling billions of redirects.

system-design
architecture
databases
caching
February 22, 2026

System Design: Rate Limiting Strategies for APIs

Explore token bucket, sliding window, and distributed rate limiting patterns to protect your APIs from abuse while ensuring fair usage.

system-design
api
redis
architecture
February 20, 2026

Mastering TypeScript: Advanced Patterns for React Developers

Explore advanced TypeScript patterns including generic components, discriminated unions, and type-safe API layers for modern React applications.

typescript
react
patterns
February 18, 2026

System Design: Building a Scalable Notification System

Design a multi-channel notification system handling push, email, SMS, and in-app notifications with priority queues, deduplication, and user preferences.

system-design
architecture
messaging
queues
February 15, 2026

Next.js Server Actions: The Complete Guide

Learn how to use Server Actions in Next.js for type-safe mutations, form handling, and database operations without API routes.

next.js
react
server-actions
February 12, 2026

System Design: Real-Time Chat Application

Design a WhatsApp-like chat system with WebSocket connections, message delivery guarantees, read receipts, and offline message sync.

system-design
websocket
architecture
real-time
February 8, 2026

System Design: Distributed Caching with Redis and Memcached

A practical guide to distributed caching — covering cache topologies, eviction policies, consistency patterns, and common pitfalls like thundering herds.

system-design
caching
redis
performance
February 5, 2026

System Design: Event-Driven Architecture with Kafka

Learn how to design event-driven systems using Apache Kafka — covering event sourcing, CQRS, saga patterns, and building loosely coupled microservices.

system-design
kafka
microservices
architecture