Chào mọi người 👋
Nếu ở Day 10 mình chia sẻ về “deadline dí xuyên biên giới”, thì sang Day 11 lại là một câu chuyện khác: deadline dí từ bên trong, khi chính team nội bộ không cùng nhịp bước.

Làm BrSE không chỉ dừng lại ở việc kết nối và giao tiếp với khách hàng, mà còn là người điều phối nhịp điệu trong team. Có khi chưa kịp lo khách “cà khịa”, thì đã phải giải quyết khủng hoảng từ chính nội bộ.

Trong chuỗi series "IT storytelling - chuyện ngành IT" này, mình sẽ chia sẻ tất tần tật những câu chuyện dở khóc dở cười từ việc làm việc với internal cho đến làm việc với external.

Mỗi người sẽ có mỗi trải nghiệm trong ngành không giống nhau - hy vọng mỗi một mảnh ghép trong một câu chuyện sẽ giúp mọi người có một cái nhìn về bức tranh toàn cảnh khi làm việc trong ngành IT.

 

 

🎭 Bối cảnh thực tế

Trong dự án booking, team mình có task Assign bác sĩ (Auto + Manual).
Khách yêu cầu:

  • Auto: hệ thống tự check lịch trống + rule ưu tiên để assign bác sĩ.

  • Manual: user chọn bác sĩ từ danh sách có sẵn.

Nghe thì đơn giản, nhưng trong thực tế, team mình bị “lạc nhịp” thế này:

  • BE nói:
    “API assign xong rồi, FE call đi là được.”

  • FE phản hồi:
    “Không call được API, vì chưa rõ param input (ngày, ca làm, course, degree của bác sĩ…). Spec chưa fix mà BE đã claim done.”

  • Tester chen vào:
    “FE chưa build xong, nên chưa có data stable để test regression. Sprint còn 2 ngày nữa thôi đó.”

Trong khi đó, PM thì vẫn báo với khách:
“Assign bác sĩ sẽ release đúng sprint.”

➡︎ Vậy là trong cùng một team, mỗi bên một nhịp. Người thì nghĩ xong rồi, người thì nghĩ chưa bắt đầu được, còn tester thì không biết mình sắp test cái gì.

 

🔍 Phân tích issue

Nguyên nhân không phải do ai “lười”, mà do thiếu đồng bộ ngay từ đầu:

  1. BE hiểu yêu cầu ở mức “check lịch trống cơ bản” → estimate 16h.
    Nhưng thực tế phát sinh rule bổ sung: check giờ mở cửa clinic, ca làm việc, course user book, độ ưu tiên assign bác sĩ.
    → Thêm 8h, nhưng BE vẫn báo “done” vì code phần cơ bản xong rồi.

  2. FE không nhận được schema input/output chuẩn → không dám code UI call API.
    Vì nếu param thay đổi, toàn bộ phần FE sẽ phải sửa → mất niềm tin vào estimate ban đầu.

  3. Tester không có mock data → không viết được case regression.
    Họ chỉ biết “cuối sprint sẽ có build”, nhưng không rõ build đó có đủ rule hay không.

  4. PM thì chỉ nghe report high-level “BE done” → tưởng là tiến độ on track, báo với khách luôn.

👉 Kết quả: cả team mỗi người hiểu một kiểu, và khi ráp lại thì phát hiện nhạc sai tông.

 

🌱 Bài học mình rút ra

1. Đồng bộ thông tin ngay từ đầu

Không thể chỉ nghe BE nói “done” là coi như done. Phải confirm cụ thể:

  • API param gồm những gì?

  • Output format ra sao?

  • Mock data có sẵn chưa?

  • FE đã verify schema chưa?

  • Tester đã có case bám theo API chưa?

Nếu team đã làm step này ngay đầu sprint, thì BE đã không claim done quá sớm, FE cũng không chờ, Tester không bơ vơ.

 

2. Dùng ngôn ngữ trung hòa – tránh đổ lỗi

Trong tình huống căng thẳng, dễ lắm để relay y nguyên:

  • FE → “BE chưa rõ spec mà đã làm.”

  • BE → “FE không chịu call API.”

Nếu chuyển thẳng thì chỉ làm đôi bên bực thêm.
Mình đổi cách nói:
“FE đang cần param sample để tránh hiểu nhầm. Anh BE confirm giúp format input/output luôn được không?”
→ Cả hai cùng tập trung vào giải quyết, không ai thấy mình bị chỉ trích.

 

3. Biết khi nào cần “mini alignment”

Lúc đó mình hẹn cả BE – FE – Tester 15 phút để chốt schema + mock data.

  • BE show param & sample JSON.

  • FE confirm sẽ call API dựa trên sample này.

  • Tester confirm sẽ viết case regression theo mock.

Sau 15 phút là mọi thứ được rõ ràng hết. Thay vì ping-pong chat cả ngày, chỉ cần một quick sync là giải thứ được biết bao nhiêu conflict.

 

4. Ví dụ mini-report nội bộ

Sau buổi sync, mình gửi note:

[Team update - Assign bác sĩ] - BE: confirm param + sample response (done) - FE: call API theo sample (Est: trưa mai) - Tester: chun bregression case theo response (Est: chiều mai) ==> Timeline vn gikp release sprint

Nhỏ gọn, rõ ràng, mọi người bám đúng nhịp.

 

📌 Mini Checklist “chống lệch nhịp”

  • Confirm chi tiết chứ không dừng ở “done”.

  • Relay message bằng ngôn ngữ trung lập.

  • Khi thấy team ping-pong quá lâu, hẹn quick sync.

  • Ghi note lại để cả team nhìn thấy cùng một nhịp.

🎶 Kết lại

Làm cầu nối không chỉ để nối team VN với khách JP, mà còn để nối chính các mảnh trong team nội bộ.
Một team mà lệch nhịp thì không khác gì ban nhạc mỗi người chơi một giai điệu.
Nhưng chỉ cần một buổi sync nhỏ, một bản note rõ ràng, cả dàn nhạc lại cùng tấu lên bản giao hưởng deadline 🎼.