Menu
ESC

Nhập từ khóa để tìm kiếm

↑↓ Di chuyển
Enter Mở
ESC Đóng

Đang tải...

Bài 58 — Working with remote/distributed teams

PSPO I Certification Preparation Bài 58/60

Mở đầu — vì sao bài này quan trọng

Sau năm 2020, làm việc từ xa (remote) và đội nhóm phân tán (distributed team) không còn là ngoại lệ mà đã trở thành mặc định ở rất nhiều công ty công nghệ tại Việt Nam. Bạn — với tư cách Product Owner — rất có thể đang ngồi ở Sài Gòn, trong khi vài Developer ở Hà Nội, một bạn QA ở Đà Nẵng, designer làm freelance ở Cần Thơ, còn stakeholder thì ở Singapore hoặc Mỹ. Mô hình này mở ra cơ hội tuyển dụng rộng hơn, tiết kiệm chi phí văn phòng, nhưng đồng thời đặt PO vào một thử thách rất thật: làm sao duy trì được sự minh bạch (transparency), sự liên kết (alignment) và tốc độ ra quyết định khi cả đội không ngồi chung một phòng?

Trong bài thi PSPO I, Scrum Guide không hề nói team phải ngồi cùng chỗ. Scrum là một framework "agnostic" về địa lý — nó không quan tâm bạn ngồi đâu, miễn là ba trụ cột empiricism (minh bạch, kiểm tra, thích nghi) được duy trì. Nhưng chính sự "agnostic" đó lại đẩy gánh nặng lên cách bạn vận hành. Khi mất đi giao tiếp mặt-đối-mặt tự nhiên ở văn phòng, ba trụ cột này không tự nhiên xảy ra nữa — bạn phải chủ động thiết kế ra chúng. Bài học này giúp bạn hiểu cách giữ vai trò PO hiệu quả trong môi trường remote/distributed, một kỹ năng vừa cần cho thi cử, vừa cực kỳ thực tế cho công việc của bạn ngay ngày mai.

Khái niệm cốt lõi

Phân biệt remote, distributed và hybrid

Ba thuật ngữ này hay bị dùng lẫn lộn nhưng có sắc thái khác nhau:

  • Remote (làm việc từ xa): từng cá nhân làm việc ở nơi khác văn phòng, nhưng đội vẫn thuộc một tổ chức, thường cùng múi giờ.
  • Distributed (phân tán): đội được chia thành nhiều địa điểm — có thể nhiều thành phố, nhiều quốc gia, nhiều múi giờ. Đây là tình huống khó nhất.
  • Hybrid (kết hợp): một phần đội lên văn phòng, một phần ở nhà. Nguy hiểm vì dễ tạo ra "two-tier team" — nhóm ở văn phòng vô tình có nhiều thông tin và ảnh hưởng hơn nhóm ở nhà.
Là PO, bạn cần biết mình đang ở mô hình nào, vì mỗi mô hình có rủi ro riêng. Phổ biến nhất ở Việt Nam hiện nay là distributed offshore — đội dev Việt phục vụ một product global, và hybrid trong nội bộ công ty Việt.

Đồng bộ (synchronous) vs Bất đồng bộ (asynchronous)

Đây là khái niệm quan trọng nhất khi làm remote. Giao tiếp đồng bộ là khi mọi người tương tác cùng lúc (họp video, gọi điện, chat realtime). Giao tiếp bất đồng bộ là khi bạn gửi thông tin và người khác đọc/phản hồi sau (tài liệu viết, comment trong backlog, video ghi sẵn, email).

Sai lầm kinh điển của PO mới làm remote là cố ép mọi thứ thành đồng bộ — họp liên miên để bù cho việc không gặp mặt. Kết quả là cả đội kiệt sức vì "meeting fatigue". Một PO giỏi trong môi trường distributed phải dịch chuyển trọng tâm sang async: viết Product Backlog Item rõ ràng đến mức Developer ở múi giờ khác có thể tự hiểu mà không cần hỏi lại, ghi lại quyết định ở nơi ai cũng truy cập được.

Transparency là vũ khí số một của PO remote

Trong Scrum, PO chịu trách nhiệm về Product Backlog minh bạch. Ở văn phòng, bạn có thể bù đắp sự thiếu minh bạch bằng cách quay sang bàn bên cạnh giải thích. Remote thì không. Vì vậy Product Backlog của bạn phải trở thành "single source of truth" — nguồn sự thật duy nhất. Mọi PBI phải có ngữ cảnh đầy đủ: tại sao làm, cho ai, acceptance criteria rõ ràng, link tới thiết kế. Backlog mơ hồ ở văn phòng còn cứu được; remote thì nó giết chết Sprint.

Múi giờ và overlap window

Khi đội trải dài qua nhiều múi giờ, khái niệm "overlap window" — khoảng thời gian tất cả mọi người đều online — trở thành tài nguyên quý hiếm. Đội Việt làm cho công ty Mỹ có thể chỉ overlap 2-3 tiếng/ngày. PO phải bảo vệ và dùng khôn ngoan khoảng thời gian vàng đó cho những việc thật sự cần đồng bộ (Sprint Review, ra quyết định lớn), còn lại đẩy sang async.

Tình huống thực tế

Tình huống 1: Đội offshore Việt Nam cho startup Mỹ — bài học về overlap window

Một công ty fintech ở San Francisco thuê một đội offshore 8 người ở Hà Nội qua một công ty outsourcing. PO sản phẩm là người Mỹ, ngồi ở California — lệch với Hà Nội tới 14-15 tiếng. Ban đầu, PO này giữ thói quen cũ: lên lịch Sprint Planning lúc 9 giờ sáng giờ California, tức là 11-12 giờ đêm giờ Hà Nội. Đội Việt họp trong trạng thái buồn ngủ, không dám hỏi nhiều, gật đầu cho xong. Sau hai Sprint, velocity tụt, nhiều việc làm sai ý.

Họ ngồi lại trong Retrospective và nhận ra vấn đề là overlap window. Giải pháp: thay vì cố nhồi mọi event vào một thời điểm bất tiện cho một bên, họ tái cấu trúc. Sprint Planning được tách: phần "what" (PO trình bày mục tiêu, ưu tiên) được PO ghi sẵn thành một video Loom 15 phút cộng tài liệu, gửi async để đội Việt xem trước. Phần "how" thì đội Việt tự bàn trong giờ làm việc của họ. Chỉ giữ lại một buổi đồng bộ 60 phút vào 8 giờ sáng Hà Nội (tức 6 giờ chiều California hôm trước) để chốt Sprint Goal và hỏi đáp.

Bài học: PO không cần có mặt ở mọi khoảnh khắc. Bằng cách chuyển phần truyền đạt thông tin sang async và chỉ dùng overlap window cho quyết định, đội cải thiện rõ rệt. Sau ba Sprint, velocity ổn định trở lại và số lần "làm sai ý" giảm hẳn vì context được viết rõ thay vì nói vội vào lúc nửa đêm.

Tình huống 2: Đội hybrid tại một ngân hàng số Việt Nam — cái bẫy "two-tier team"

Một ngân hàng số ở TP.HCM (gọi là Ngân hàng V) áp dụng mô hình hybrid: 3 ngày lên văn phòng, 2 ngày ở nhà. Nhưng PO của một đội sản phẩm có thói quen ra quyết định nhanh ngay tại bàn làm việc với những Developer đang ngồi cạnh. Vấn đề là 4 trong 9 thành viên hôm đó làm ở nhà — gồm cả 2 Developer chủ chốt và bạn QA.

Hậu quả tích lũy dần: những bạn ở nhà liên tục bị "muộn thông tin". Một quyết định thay đổi acceptance criteria được chốt miệng ở văn phòng lúc 10 giờ sáng, nhưng mãi tới chiều mới được nhắc lại trên Slack một cách lờ mờ. Bạn Developer ở nhà code theo phiên bản cũ, mất nửa ngày làm lại. Dần dần hình thành cảm giác "người ở văn phòng mới là người thật sự quyết", người ở nhà thành công dân hạng hai.

PO nhận ra và đặt ra một nguyên tắc cứng: "Nếu nó không được viết ra ở nơi mọi người thấy được, thì nó chưa xảy ra." Mọi quyết định ảnh hưởng tới công việc — dù chốt ở văn phòng — phải được ghi ngay vào PBI hoặc kênh chung trong vòng 15 phút. Đội cũng chuyển Daily Scrum thành 100% online ngay cả khi có người ở văn phòng, để ai cũng bình đẳng trên màn hình.

Bài học: Hybrid nguy hiểm hơn fully-remote ở chỗ nó âm thầm tạo bất bình đẳng thông tin. PO phải chủ động "san phẳng" sân chơi bằng cách buộc mọi giao tiếp quan trọng đi qua kênh mà người ở xa cũng tiếp cận được.

Tình huống 3: Distributed đa thành phố trong một product company Việt

Một công ty sản phẩm Việt làm SaaS cho thị trường Đông Nam Á có đội kỹ thuật rải ở Hà Nội, Đà Nẵng và một vài bạn remote ở tỉnh. Cùng múi giờ nên không vướng vấn đề thời gian, nhưng vướng vấn đề "thiếu ngữ cảnh chung". Các bạn ở tỉnh ít khi gặp stakeholder, không nắm được vì sao một feature lại được ưu tiên, nên hay đặt câu hỏi "tại sao mình làm cái này?" giữa Sprint, làm gián đoạn dòng chảy.

PO giải quyết bằng cách đầu tư mạnh vào việc "kể câu chuyện sản phẩm" một cách async: mỗi đầu Sprint, PO quay một video 5-7 phút giải thích bối cảnh — phản hồi của khách hàng, dữ liệu sử dụng, lý do ưu tiên. Đồng thời, PO mở một kênh để bất kỳ ai cũng có thể xem được các ghi chú từ buổi gặp stakeholder. Kết quả: các bạn remote cảm thấy được kết nối với "why", chủ động hơn, và số câu hỏi gián đoạn giữa Sprint giảm rõ.

Bài học: Cùng múi giờ không có nghĩa là không có khoảng cách. Khoảng cách lớn nhất của distributed team thường là khoảng cách về ngữ cảnh, và PO là người duy nhất có thể lấp nó bằng cách chủ động chia sẻ "tại sao".

Hướng dẫn từng bước

Dưới đây là cách bạn — PO — vận hành hiệu quả với một đội remote/distributed:

  • Xác định bản đồ đội của bạn. Liệt kê ai ở đâu, múi giờ nào, hình thức làm việc (remote/hybrid). Tính ra overlap window thực tế. Đây là dữ liệu nền để bạn thiết kế cách giao tiếp.
  • Biến Product Backlog thành single source of truth. Mỗi PBI phải tự đứng được: có context (tại sao), acceptance criteria rõ, link tới design/dữ liệu. Đặt mục tiêu: một Developer ở múi giờ khác đọc xong là làm được mà không cần hỏi.
  • Quyết định việc nào sync, việc nào async. Dùng overlap window quý giá cho: chốt Sprint Goal, Sprint Review với stakeholder, gỡ vướng mắc lớn. Đẩy sang async: cập nhật trạng thái, làm rõ chi tiết PBI, chia sẻ context.
  • Thiết lập "definition of decision". Quy ước rằng mọi quyết định chỉ có hiệu lực khi được ghi vào nơi chung. Loại bỏ quyết định miệng ở hành lang.
  • Bảo vệ refinement và alignment qua async-first. Gửi PBI trước, để đội đọc và comment, rồi mới họp ngắn để gỡ điểm còn vướng — thay vì họp dài để đọc cùng nhau.
  • Làm cho mình "luôn truy cập được" mà không cần luôn online. Trả lời rõ ràng trong backlog/kênh chung, ưu tiên những câu hỏi đang chặn (blocking). Một PO remote tốt là người không trở thành nút cổ chai dù không ngồi cạnh ai.
  • Đo lường và thích nghi. Dùng Retrospective để liên tục hỏi: thông tin có chảy đều không? Người ở xa có bị muộn không? Rồi điều chỉnh.

Lỗi thường gặp & mẹo

Lỗi 1 — Họp quá nhiều để bù cho remote. PO sợ mất kiểm soát nên triệu tập họp liên tục. Đội kiệt sức, không còn thời gian làm. Mẹo: mỗi lần định lên lịch họp, tự hỏi "việc này có thể giải quyết bằng một tài liệu hoặc video async không?"

Lỗi 2 — Backlog viết sơ sài kiểu "nói thêm sau". Ở văn phòng bạn nói thêm được, remote thì PBI mơ hồ là quả bom hẹn giờ. Mẹo: áp dụng "self-sufficiency test" — đưa PBI cho một người ngoài đội đọc, nếu họ hiểu được mục đích thì đạt.

Lỗi 3 — Bỏ quên người ở xa trong hybrid. Quyết định chốt với người ngồi cạnh, người ở nhà thành hạng hai. Mẹo: "remote-first by default" — họp online toàn bộ ngay cả khi có người ở văn phòng, ghi mọi quyết định ra kênh chung.

Lỗi 4 — Áp giờ họp bất lợi lên một phía. Luôn họp theo giờ thuận tiện cho PO/stakeholder, đẩy đội offshore vào ca đêm. Mẹo: luân phiên gánh nặng múi giờ, hoặc chuyển phần truyền đạt sang async để không ai phải họp lúc nửa đêm.

Lỗi 5 — Nghĩ rằng remote là lý do để bỏ qua Scrum events. Một số PO viện cớ "khó họp" để cắt Sprint Review hay Retrospective. Mẹo: không cắt event, chỉ thiết kế lại cách chạy. Empiricism vẫn cần inspect & adapt dù đội ở đâu.

Mẹo vàng: Trong môi trường remote, sự minh bạch không tự nhiên xảy ra — nó là thứ bạn phải cố ý xây dựng mỗi ngày. Hãy coi việc "viết ra" là một phần công việc cốt lõi của PO, không phải gánh nặng phụ thêm.

Bài tập thực hành

  • Vẽ bản đồ đội của bạn. Liệt kê từng thành viên, vị trí, múi giờ, hình thức làm việc. Tính overlap window. Nếu bạn chưa đi làm, hãy giả định một đội: PO ở TP.HCM, 3 Dev ở Hà Nội, 1 QA remote ở tỉnh, stakeholder ở Singapore.
  • Phân loại sync/async. Lấy 5 Scrum events và các hoạt động PO thường làm (refinement, trả lời câu hỏi Dev, gặp stakeholder). Với mỗi việc, quyết định nên làm đồng bộ hay bất đồng bộ, và giải thích lý do dựa trên overlap window.
  • Viết lại một PBI cho remote. Lấy một user story mơ hồ kiểu "Cải thiện trang thanh toán". Viết lại để nó tự đứng được cho một Developer ở múi giờ khác: thêm context, acceptance criteria, lý do ưu tiên. Đưa cho một người ngoài đọc thử để kiểm tra "self-sufficiency test".
  • Tình huống xử lý: Một quyết định thay đổi scope được chốt miệng ở văn phòng, một Developer ở nhà làm sai mất nửa ngày. Hãy viết ra nguyên tắc và quy trình bạn sẽ đề xuất trong Retrospective để việc này không lặp lại.

Tóm tắt

  • Scrum không quan tâm đội bạn ngồi đâu, nhưng remote/distributed làm cho ba trụ cột empiricism không còn tự nhiên xảy ra — PO phải chủ động thiết kế sự minh bạch.
  • Phân biệt remote, distributed, hybrid; hybrid âm thầm nguy hiểm nhất vì tạo bất bình đẳng thông tin giữa người ở văn phòng và người ở xa.
  • Vũ khí số một của PO remote là Product Backlog minh bạch — biến nó thành single source of truth để Developer ở bất kỳ đâu cũng tự hiểu được.
  • Dịch chuyển trọng tâm từ sync sang async: dùng overlap window quý hiếm cho quyết định lớn, đẩy việc truyền đạt thông tin sang tài liệu và video.
  • Nguyên tắc cốt lõi: "Nếu nó không được viết ra ở nơi mọi người thấy, thì nó chưa xảy ra." Ghi mọi quyết định, san phẳng sân chơi, và đừng trở thành nút cổ chai dù bạn không ngồi cạnh ai.