Blog
Nơi mình chia sẻ nhật ký và những câu chuyện nhỏ trong hành trình làm nghề.
Testcontainers — integration test với database thật, không cần mock
Testcontainers giúp bạn chạy integration test với PostgreSQL, Redis, Kafka thật trong container. Tạm biệt mock, tạm biệt những bug chỉ xuất hiện ở production.
Leaders, Followers & Replication Lag — Cơ chế replication (DDIA)
Single-leader replication trong distributed systems — cách leader ghi dữ liệu, follower đồng bộ, và những vấn đề replication lag gây ra.
Shared State Is Incorrect State — Trạng thái dùng chung là trạng thái sai (Pragmatic Programmer #34)
Topic 34 từ cuốn The Pragmatic Programmer: Shared State Is Incorrect State — giải thích về race condition, nonatomic updates, semaphore/mutex, và cách tránh shared state trong lập trình đồng thời.

Rust Ownership — khi compiler là người giữ chìa khóa bộ nhớ của bạn
Rust không có garbage collector như Java hay Go, nhưng vẫn an toàn bộ nhớ nhờ Ownership. Tìm hiểu cách Rust làm điều đó và tại sao nó thay đổi cách bạn nghĩ về memory management.