diff --git a/posts/2024-01-20-backend-thinking.md b/posts/2024-01-20-backend-thinking.md
new file mode 100644
index 0000000..d56a6b1
--- /dev/null
+++ b/posts/2024-01-20-backend-thinking.md
@@ -0,0 +1,25 @@
+# Backend Thinking
+
+## Backend Role
+
+Transform business requirements to action, which usually involves:
+
+- Service:
+ - ZaloPay use microservices architecture, mostly written using Go and Java
+- API:
+ - HTTP (Client-Server) and GRPC (Server-Server)
+- Database/Cache/Storage/Message Broker
+ - MySQL/Redis/S3/Kafka
+ - CRUD
+- Docs
+ - Mostly design notes and diagrams which show how to implement business
+ requirements
+
+After successfully do all of that, next step is:
+
+- Testing
+ - Unit tests, Integration tests
+- Observation
+ - Log
+ - Metrics
+ - Tracing
diff --git a/posts/index.md b/posts/index.md
index b039f32..5d74b7a 100644
--- a/posts/index.md
+++ b/posts/index.md
@@ -35,3 +35,4 @@ This is where I dump my thoughts.
- [Bloguru](2023-09-23-bloguru.html)
- [Unrelated engineer](2023-10-02-unrelated.html)
- [Debounce](2023-12-16-debounce.html)
+- [Backend Thinking](2024-01-20-backend-thinking.html)