Pragmatic Programmer – Topic 47: Working Together — Code chung
Topic 47 Pragmatic Programmer: pair programming và mob programming — vì sao code chung lại cho kết quả tốt hơn, và làm sao để pair thật sự hiệu quả.
THE ENGINEERING JOURNAL
Các bài viết về engineering.
Topic 47 Pragmatic Programmer: pair programming và mob programming — vì sao code chung lại cho kết quả tốt hơn, và làm sao để pair thật sự hiệu quả.
Goroutine leak âm thầm ăn hết RAM của bạn. Nhận diện 3 pattern leak kinh điển và fix bằng context + select + goleak.
Topic 46 Pragmatic Programmer: bài toán 'bất khả thi' thường chỉ bị giới hạn bởi suy nghĩ của chính mình. Cách nhận diện ràng buộc tự đặt và phá bẫy.

So sánh Kafka, RabbitMQ và Redis Streams: ưu nhược điểm, khi nào dùng cái nào, kèm code Go consumer với retry và dead letter queue.
Yêu cầu hiếm khi nằm trên bề mặt — Topic 45: đào bới yêu cầu thật, biến requirements thành hội thoại, dùng project glossary.

API Gateway là cửa ngõ duy nhất cho mọi request: routing, auth tập trung, aggregation. Kèm code Go thực chiến và khi nào KHÔNG nên dùng.
Index là con dao hai lưỡi: đúng thì query chạy như gió, sai thì database phình to. Học B-tree, GIN, partial index và cách tránh bẫy thực tế.
Cái tên quyết định code dễ đọc hay ác mộng. Topic 44 Pragmatic Programmer — đặt tên theo ý định, không theo cách thực hiện.
Log chỉ kể chuyện gì xảy ra, metrics & tracing mới trả lời vì sao. Setup OpenTelemetry trong Go: tracer, span, histogram — kèm bài học thực tế.
Học cách dùng Testcontainers để viết integration test với dependency thật (Postgres, Redis) trong Go — không mock, chạy CI mượt, code an tâm hơn.