Giao Tiếp Chuyên Nghiệp Trong Tech - Framework Áp Dụng Ngay
🎯 Mục Tiêu Bài Viết
Code giỏi chưa đủ. Senior cần giao tiếp hiệu quả — với đồng nghiệp, với sếp, trong group chat.
Bài viết này giúp bạn:
✅ Nắm framework tổng: CLEAR Message
✅ Nhắn với đồng nghiệp: 3C Framework
✅ Nhắn với sếp: SBAR Framework
✅ Nhắn trong group: BOLD Framework
✅ Tránh những lỗi "chết người" dev hay mắc
✅ Có sẵn script dùng mỗi ngày
Senior không chỉ code tốt — Senior làm cho mọi người xung quanh làm việc hiệu quả hơn, bắt đầu từ giao tiếp.
🗺️ 1. Big Picture — Giao Tiếp Trong Tech
GIAO TIẾP TRONG CÔNG VIỆC
│
┌─────────────────┼─────────────────┐
│ │ │
▼ ▼ ▼
Đồng nghiệp Sếp Group Chat
(peer-to-peer) (upward comm.) (public comm.)
│ │ │
▼ ▼ ▼
3C Model SBAR Model BOLD Model
Clear-Concise- Situation- Brief-Objective-
Collaborative Background- Link-Direct
Assessment-
Recommendation
└─────────────────┴─────────────────┘
│
▼
CLEAR Message Framework
(áp dụng cho mọi tình huống)
🧠 2. Framework Tổng: CLEAR Message
Dùng cho mọi tình huống — nhắn sếp, đồng nghiệp hay group.
Cấu trúc CLEAR
C = Context → Bối cảnh là gì?
L = Logic → Vấn đề / diễn biến thế nào?
E = Expectation → Bạn muốn gì?
A = Action → Cần làm gì tiếp theo?
R = Respect → Tone lịch sự, dễ chịu
Template CLEAR
┌─────────────────────────────────────────────┐
│ CLEAR MESSAGE │
│ │
│ [C] Context │
│ "Hiện tại / Liên quan tới..." │
│ │
│ [L] Logic │
│ "Tình hình là..." │
│ │
│ [E] Expectation │
│ "Mình nghĩ / đề xuất..." │
│ │
│ [A] Action │
│ "Nhờ bạn / team..." │
│ │
│ [R] Respect │
│ "Thanks / Appreciate / 🙏" │
│ │
└─────────────────────────────────────────────┘
Ví Dụ Áp Dụng CLEAR
C → Mình đang làm task tích hợp thanh toán Stripe.
L → Webhook bị fail khi verify signature — đã thử 2 cách theo
docs nhưng đều 400.
E → Mình nghĩ do thiếu secret key trong env staging.
A → Nhờ bạn check lại config env hoặc confirm secret key đúng chưa.
R → Thanks bạn nhiều!
🧑💻 3. Nhắn Với Đồng Nghiệp — 3C Framework
Mục Tiêu
✅ Nhanh
✅ Dễ hiểu
✅ Không drama
3C = Clear – Concise – Collaborative
┌───────────────────────────────────────────────────┐
│ 3C FRAMEWORK │
│ │
│ CLEAR → Không mơ hồ, đủ context │
│ CONCISE → Ngắn gọn, không dài dòng │
│ COLLABORATIVE → Mở ra hợp tác, không accusatory │
│ │
└───────────────────────────────────────────────────┘
So Sánh ❌ vs ✅
❌ SAI — mơ hồ, thiếu context:
"API này lỗi rồi bạn check giúp mình"
Vấn đề:
├─ API nào?
├─ Lỗi gì?
├─ Ở đâu (env nào)?
└─ Khi nào?
→ Người nhận phải hỏi lại nhiều lần
✅ ĐÚNG — đủ context, dễ hành động:
"Hi bạn,
API /users bị 500 khi call từ FE (env staging).
Mình reproduce lúc 10:30, request ID: abc-123.
Bạn check giúp mình nguyên nhân với nhé?
Nếu cần log mình gửi thêm.
Thanks!"
Tốt vì:
├─ Biết endpoint nào bị lỗi
├─ Biết env + thời gian
├─ Có request ID để trace
└─ Offer thêm info nếu cần
Quy Tắc Vàng Khi Nhắn Đồng Nghiệp
Trước khi gửi, tự hỏi:
1. Người nhận có hiểu NGAY không?
2. Họ cần hỏi lại gì không?
3. Mình có đang blame không? → Đổi thành collaborative
Mục tiêu:
Gửi 1 tin → Người nhận hiểu + hành động ngay
Không phải: Gửi 1 tin → 5 tin hỏi lại
🧑💼 4. Nhắn Với Sếp — SBAR Framework
Nguyên Tắc Cốt Lõi
Sếp không thích "Problem"
Sếp thích "Solution + Decision"
Junior: "Em bị stuck rồi anh ơi"
Senior: "Em propose 2 hướng, anh chọn hướng nào?"
SBAR = Situation – Background – Assessment – Recommendation
┌─────────────────────────────────────────────────────────┐
│ SBAR FRAMEWORK │
│ │
│ S SITUATION Chuyện gì đang xảy ra? │
│ ───────── (ngắn gọn, 1-2 câu) │
│ │
│ B BACKGROUND Bối cảnh liên quan? │
│ ────────── (đã thử gì, data có sẵn) │
│ │
│ A ASSESSMENT Bạn đánh giá thế nào? │
│ ────────── (hypothesis / root cause) │
│ │
│ R RECOMMENDATION Bạn đề xuất gì? │
│ ────────────── (options cụ thể, cần decision) │
│ │
└─────────────────────────────────────────────────────────┘
So Sánh ❌ vs ✅
❌ SAI — chỉ có problem, không có solution:
"Task này khó quá, em chưa làm được"
Vấn đề:
├─ Sếp phải hỏi: "Khó ở chỗ nào?"
├─ Sếp phải hỏi: "Em đã thử chưa?"
├─ Sếp phải hỏi: "Em muốn gì?"
└─ → Waste sếp's time, trông như junior
✅ ĐÚNG — áp dụng SBAR:
"Hi anh,
[S] Hiện tại task tích hợp Stripe đang bị block
do webhook chưa verify được.
[B] Em đã check docs + thử 2 cách nhưng đều fail
với lỗi 400 Bad Request.
[A] Em nghĩ có thể do config server thiếu
STRIPE_WEBHOOK_SECRET trong env staging.
[R] Em propose 2 hướng:
1. Check + add lại env config (nhanh hơn)
2. Mock webhook tạm để unblock FE (nếu cần ship sớm)
Anh confirm giúp em hướng đi phù hợp nhé."
Tốt vì:
├─ Sếp hiểu ngay tình huống
├─ Thấy bạn đã cố gắng (không lazy)
├─ Có hypothesis → thấy bạn đang suy nghĩ
└─ Chỉ cần sếp pick option → ra quyết định nhanh
Flow Khi Nhắn Sếp
Gặp vấn đề
│
▼
Đã thử tự giải quyết chưa?
│
├── CHƯA → Thử trước (ít nhất 30 phút)
│
└── ĐÃ THỬ → Có hypothesis không?
│
├── CÓ → Viết SBAR + gửi
└── KHÔNG → Ghi lại những gì đã thử
→ Gửi với "Em suspect..."
👥 5. Nhắn Trong Group — BOLD Framework
Nguyên Tắc
Group chat ≠ chat riêng
Phải viết để:
├─ Người TRONG context hiểu
└─ Người NGOÀI context cũng hiểu
BOLD = Brief – Objective – Link/Info – Direct mention
┌─────────────────────────────────────────────────────────┐
│ BOLD FRAMEWORK │
│ │
│ B BRIEF Ngắn gọn, đúng trọng tâm │
│ ───── Không viết như essay │
│ │
│ O OBJECTIVE Mục tiêu rõ ràng │
│ ───────── Đọc xong biết ngay purpose là gì │
│ │
│ L LINK / INFO Đính kèm data nếu cần │
│ ─────────── Link, screenshot, log,... │
│ │
│ D DIRECT MENTION Tag đúng người cần hành động │
│ ────────────── Không tag cả team nếu không cần │
│ │
└─────────────────────────────────────────────────────────┘
Ví Dụ Áp Dụng BOLD
✅ ĐÚNG:
[Update FE - Checkout Flow] ← B: brief, rõ topic
- Đã fix bug payment fail (PR #142) ← O: objective rõ
- Deploy staging lúc 14:00
- Cần verify lại trước khi lên prod
@Nam: Nhờ bạn verify flow payment staging ← D: direct mention
@QA: Có thể chạy regression test không?
Staging link: https://staging.app/checkout ← L: link info
PR: https://github.com/...
Thanks team!
❌ SAI:
"mình vừa fix bug payment xong các bạn ơi
ai test giúp mình với"
Vấn đề:
├─ Không rõ bug nào
├─ Không rõ test ở đâu
├─ "các bạn" = không ai chịu trách nhiệm
└─ Mọi người đọc xong... scroll qua
⚠️ 6. Những Lỗi “Chết Người” Dev Hay Mắc
╔══════════════════════════════════════════════════════════╗
║ TOP 5 LỖI GIAO TIẾP PHỔ BIẾN ║
╚══════════════════════════════════════════════════════════╝
❌ LỖI 1: "PING" KHÔNG NÓI GÌ
─────────────────────────
Sai: "Hi" / "bạn ơi" / "online không?"
Đúng: "Hi, mình cần hỏi về API payment, bạn có thể giúp không?"
→ Ping không nội dung = waste time của 2 người
❌ LỖI 2: THIẾU CONTEXT
───────────────────
Sai: "Cái này sai rồi"
Đúng: "Function calculateTotal() trả về -1 khi
quantity = 0 (expected: 0)"
→ Thiếu context = người nhận phải đoán = frustrating
❌ LỖI 3: CHỈ BÁO LỖI, KHÔNG ĐỀ XUẤT
──────────────────────────────────
Sai: "Em không làm được task này"
Đúng: "Em propose 2 hướng: ... Anh chọn hướng nào?"
→ Chỉ nêu vấn đề = trông như junior mãi
❌ LỖI 4: TIN NHẮN DÀI NHƯNG KHÔNG STRUCTURE
──────────────────────────────────────────
Sai: 1 đoạn văn 10 câu liên tục
Đúng: Dùng bullet points, headers, numbering
→ Không structured = sếp đọc → skip
❌ LỖI 5: TAG SAI NGƯỜI HOẶC TAG HẾT
──────────────────────────────────
Sai: "@everyone cần fix bug này"
Đúng: "@Nam (BE) xử lý API, @Lan (QA) verify sau"
→ Tag hết = không ai chịu trách nhiệm
📋 7. Script Sẵn Dùng Mỗi Ngày
🧩 Khi Hỏi / Cần Hỗ Trợ
Hi [name],
Mình đang làm [task / feature name].
Hiện gặp issue: [mô tả ngắn gọn vấn đề].
Mình đã thử:
- [cách 1]
- [cách 2]
Bạn suggest giúp mình hướng xử lý với nhé?
[Link / log / screenshot nếu cần]
Thanks!
🧩 Khi Update Tiến Độ
[Update - Task/Feature Name]
✅ Done:
- [item 1]
- [item 2]
🔄 In progress:
- [item đang làm]
🚧 Blocked:
- [vấn đề] → cần [ai / gì] hỗ trợ
Next: [bước tiếp theo]
ETA: [dự kiến xong khi nào]
🧩 Khi Nhờ Việc
Hi [name],
Nhờ bạn hỗ trợ [task cụ thể] giúp mình.
Context: [tại sao cần, liên quan đến gì]
Input cần: [bạn cần gì từ họ]
Output mong đợi: [kết quả cần nhận lại]
Deadline: [khi nào cần]
Cảm ơn bạn!
🧩 Khi Báo Cáo Lên Sếp (SBAR Template)
Hi [sếp],
[S] Situation: [1-2 câu mô tả vấn đề]
[B] Background: [đã thử gì, data có gì]
[A] Assessment: [bạn nghĩ nguyên nhân là gì]
[R] Recommendation:
Option 1: [...] → Pro: ... / Con: ...
Option 2: [...] → Pro: ... / Con: ...
Nhờ anh/chị confirm hướng đi giúp em.
[Deadline nếu có]
📊 8. Tổng Kết — Cheat Sheet
┌──────────────────────────────────────────────────────────────┐
│ COMMUNICATION CHEAT SHEET │
│ │
│ ĐỐI TƯỢNG FRAMEWORK MỤC TIÊU │
│ ───────── ───────── ───────── │
│ │
│ Đồng nghiệp → 3C Model → Nhanh + rõ + hợp tác │
│ (peer) Clear Giảm hỏi qua lại │
│ Concise │
│ Collaborative │
│ │
│ Sếp → SBAR → Có solution + xin quyết │
│ (upward) Situation định │
│ Background Không chỉ báo vấn đề │
│ Assessment │
│ Recommendation │
│ │
│ Group Chat → BOLD → Ai đọc cũng hiểu │
│ (public) Brief Đúng người + đúng việc │
│ Objective │
│ Link/Info │
│ Direct mention │
│ │
│ Mọi nơi → CLEAR → Framework tổng áp dụng │
│ (universal) Context mọi tình huống │
│ Logic │
│ Expectation │
│ Action │
│ Respect │
│ │
└──────────────────────────────────────────────────────────────┘
Mid vs Senior Perspective
MID-LEVEL:
"Nhắn cho nhanh, nói được là được."
"Đồng nghiệp hỏi lại thì trả lời tiếp."
"Sếp hỏi gì thì mới update."
SENIOR:
"Mỗi tin nhắn là một mini decision system."
"Viết để người đọc hiểu nhanh + quyết định ngay."
"Proactive update — không chờ bị hỏi."
"Giao tiếp tốt = mọi người làm việc hiệu quả hơn."
🎯 Checklist Tự Đánh Giá
Trước Khi Gửi Tin Nhắn
- Người nhận có hiểu ngay không cần hỏi lại?
- Đã có context đủ chưa (env, time, endpoint,…)?
- Đã đề xuất hướng giải quyết chưa (nếu nhắn sếp)?
- Đã tag đúng người chưa (không tag thừa)?
- Tone có lịch sự, collaborative không?
Senior Level
- Không bao giờ “ping” không nội dung?
- Nhắn sếp luôn có ≥ 1 option giải quyết?
- Update tiến độ proactive, không chờ bị hỏi?
- Tin nhắn dài thì có structure (bullets, headers)?
- Group chat viết để “người ngoài context cũng hiểu”?
💡 Câu Chốt Lõi
Đồng nghiệp → Clear + dễ hợp tác (3C)
Sếp → Có solution, không chỉ problem (SBAR)
Group chat → Ngắn + structured + tag đúng người (BOLD)
Mọi nơi → Dùng CLEAR làm khung tổng
Mỗi tin nhắn là một mini decision system:
├─ Giúp người đọc HIỂU NHANH
├─ Giúp người đọc QUYẾT ĐỊNH NHANH
└─ Giúp người đọc HÀNH ĐỘNG NGAY
Code tốt → bạn làm việc hiệu quả.
Giao tiếp tốt → CẢ TEAM làm việc hiệu quả.
“The single biggest problem in communication is the illusion that it has taken place.” — George Bernard Shaw