Product Management
Đăng nhập
ESC

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

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

Kiến trúc kỹ thuật

Technical

Ra quyết định kiến trúc và đánh đổi dài hạn.

Bạn đang ở đâu với kỹ năng này?

Làm bài Đánh giá Kỹ năng Kỹ thuật cho PM/BA — 2 người đã làm. Một lần làm chấm điểm cho tất cả kỹ năng trong nhóm Technical, không chỉ kỹ năng này.

Làm bài đánh giá

Kỹ năng này cho bạn điều gì

Bắt đầu từ đây

Kiến trúc là tập hợp những quyết định KHÓ ĐẢO NGƯỢC: tách dịch vụ hay để chung, dữ liệu để ở đâu, hai phần nói chuyện đồng bộ hay qua hàng đợi. Đặc điểm chung: sửa sau rất đắt. Việc của người không phải kỹ sư là nhận ra khi một quyết định thuộc nhóm này.

Khi đã làm được

Tham gia được vào quyết định kiến trúc mà không cần viết code: hỏi đúng câu về đánh đổi, đọc được một ADR, nhận ra khi “làm nhanh cho kịp” đang tạo nợ không trả nổi, và bảo vệ được thời gian cho việc trả nợ đó trong roadmap.

Roadmap — Cách học và đạt kỹ năng

Đã đọc 0/13 mục · còn khoảng 5 phút
Cách chúng tôi ghi nhận

Một mục được tính là đã đọc khi nó nằm giữa màn hình đủ lâu so với độ dài của nó (bảng và sơ đồ tính một nửa), bạn vẫn đang cuộn hoặc bấm phím, và bạn đã thấy tới cuối mục. Lướt nhanh hoặc để tab mở không được tính. Chúng tôi chỉ lưu thời gian đọc từng mục — không lưu gì khác.

Kiến trúc kỹ thuật là gì?

Kiến trúc là những quyết định mà sửa lại sau này tốn hàng tháng chứ không phải hàng giờ.

Bạn không cần tự thiết kế. Bạn cần nhận ra khi một quyết định thuộc nhóm đó — vì đó là lúc cần bàn kỹ, còn lại thì để đội tự quyết.

Quyết định nào là kiến trúc, quyết định nào không?

Quyết địnhĐảo ngược tốn bao lâuCần bàn kỹ không
Tách một dịch vụ riêngNhiều thángCó
Chọn cơ sở dữ liệu cho dữ liệu chínhNhiều thángCó
Đồng bộ hay hàng đợi giữa hai phầnVài tuần đến vài thángCó
Chọn thư viện cho một màn hìnhVài ngàyKhông
Đặt tên hàm, cấu trúc thư mụcVài giờKhông

Khi nào bạn gặp chuyện này

Tình huốngBạn làm gìNếu không
Đội nói “để kịp release mình làm tạm cách này”.Hỏi một câu: “Sửa lại sau này mất bao lâu?” Dưới một tuần thì đồng ý; trên một tháng thì phải bàn.Sáu tháng sau bạn nghe “phải viết lại” và không có chỗ nào trong roadmap cho nó.
Hai đội cùng cần một dữ liệu, mỗi đội tự lưu một bản.Chốt ai là nguồn sự thật trước khi cả hai đi tiếp, và viết vào một ADR.Một năm sau hai con số không khớp, và không ai biết bản nào đúng.
Một tính năng cần dữ liệu từ ba hệ thống, mỗi lần gọi mất 2 giây.Hỏi về đồng bộ hay hàng đợi ngay lúc viết spec, không để lúc test mới phát hiện.Tính năng chạy được nhưng chậm tới mức không ai dùng.

Năm câu hỏi dùng được mà không cần biết code

  • “Sửa lại sau này mất bao lâu?” — phân loại quyết định.
  • “Cái gì hỏng nếu phần này ngừng chạy?” — tìm phụ thuộc ẩn.
  • “Dữ liệu này ai là nguồn sự thật?” — tránh hai bản số liệu.
  • “Gấp 10 lần người dùng thì cái gì gãy trước?” — tìm trần.
  • “Mình đang đánh đổi cái gì để lấy tốc độ hôm nay?” — làm nợ hiện hình.

ADR — bản ghi một quyết định kiến trúc, một trang

MụcViết gì
Bối cảnhVấn đề đang cần giải, và ràng buộc thật (thời gian, người, tiền)
Các phương ánÍt nhất hai, kèm lý do loại
Quyết địnhChọn gì, ai chốt, ngày nào
Đánh đổiĐược gì, mất gì — nói thẳng phần mất
Xem lại khiĐiều kiện cụ thể khiến quyết định này cần xét lại

Sai lầm thường gặp

Sai lầmVì sao hỏngLàm thay bằng
Bàn kiến trúc cho mọi quyết địnhĐội tê liệt; việc nhỏ cũng phải họp.Chỉ bàn thứ khó đảo ngược.
“Để sau tính” cho thứ khó đảo ngượcSáu tháng sau chi phí gấp mười.Hỏi thời gian đảo ngược ngay lúc đó.
Không ghi lại lý doNgười sau đảo ngược quyết định mà không biết vì sao có nó.Một ADR một trang là đủ.
PM đứng ngoài hoàn toànĐánh đổi kỹ thuật luôn là đánh đổi sản phẩm.Hỏi năm câu ở trên, không cần hơn.

Vì sao vai trò của bạn cần cái này

Vai tròBạn dùng nó để
Technical Product ManagerBạn là cầu nối: dịch đánh đổi kỹ thuật thành hệ quả sản phẩm cho người không đọc được sơ đồ.
Product ManagerBạn bảo vệ thời gian trả nợ kỹ thuật trong roadmap — không ai khác làm được việc đó.
Engineering ManagerBạn chủ trì quyết định và giữ ADR sống.
Head of ProductNợ kiến trúc là thứ làm roadmap năm sau chậm lại; bạn cần thấy nó trước khi nó tới.

Definition of done — dấu hiệu bạn đã đạt

  • Bạn phân biệt được quyết định kiến trúc và quyết định thường.
  • Mỗi quyết định lớn có một ADR một trang.
  • Roadmap có chỗ cho việc trả nợ, không chỉ tính năng mới.
  • Bạn hỏi được “sửa lại mất bao lâu” mà không thấy ngại.

Vì sao người làm sản phẩm cần hiểu kiến trúc

Bạn không thiết kế kiến trúc. Nhưng kiến trúc quyết định cái gì rẻ và cái gì đắt trong nhiều năm — và bạn sẽ liên tục va vào nó dưới dạng "yêu cầu này tốn ba tháng" mà không hiểu vì sao.

Yêu cầu nghiệp vụKiến trúc quyết định điều gì
"Cho khách hàng lớn dùng tên miền riêng"Hệ thống có tách được theo khách hàng không
"Chạy ở thị trường nước ngoài"Dữ liệu có tách theo vùng được không — thường là quyết định từ năm đầu
"Cho đối tác gọi API"Có ranh giới rõ giữa bên trong và bên ngoài không
"Xử lý gấp 10 lần lượng đơn"Phần nào mở rộng được, phần nào là nút thắt cố định

Điểm quan trọng nhất: những quyết định này được đưa ra rất sớm, thường bởi một hai người, trong vài ngày — và chúng chi phối nhiều năm. Có mặt trong cuộc trò chuyện đó đáng giá hơn nhiều so với việc phản ứng lại nó ba năm sau.

Bốn câu hỏi nên hỏi về bất kỳ kiến trúc nào

  • Cái gì đắt khi đổi? Mọi kiến trúc đều làm một số thứ rẻ và một số thứ đắt. Biết trước danh sách "đắt" giúp bạn không hứa nhầm.
  • Nút thắt nằm ở đâu khi lượng dùng tăng gấp mười? Câu trả lời thường là một thành phần cụ thể, và biết trước cho phép chuẩn bị.
  • Phần nào chỉ một người hiểu? Đây là rủi ro tổ chức nhiều hơn là rủi ro kỹ thuật.
  • Nếu một phần hỏng thì phần nào còn chạy? Hệ thống mà một lỗi nhỏ làm dừng toàn bộ là một quyết định, không phải một tai nạn.

Về nợ kiến trúc: khác nợ kỹ thuật thông thường ở chỗ nó không sửa được dần dần. Nợ code trả từng chút được; quyết định kiến trúc sai thì hoặc sống chung, hoặc làm lại lớn. Đó là lý do nó đáng được bàn kỹ ở đầu.

Ba đánh đổi kiến trúc mà người làm sản phẩm nên hiểu

Đánh đổiChọn một bên thìẢnh hưởng tới sản phẩm ra sao
Một khối liền vs nhiều dịch vụ nhỏMột khối: đơn giản, nhanh lúc đầu, khó chia đội về sauNhiều dịch vụ trước khi đội đủ lớn sẽ làm mọi thứ chậm mà không được gì
Mua vs tự xâyMua: nhanh, phụ thuộc; tự xây: chậm, kiểm soátTự xây thứ không phải lợi thế cạnh tranh là cách tiêu tiền phổ biến nhất
Nhất quán ngay vs nhất quán sauNgay: đơn giản hiểu, khó mở rộng; sau: mở rộng tốt, sinh ca lạQuyết định này lộ ra với người dùng: "sao tôi vừa cập nhật mà chưa thấy?"

Dòng cuối là dòng người làm sản phẩm hay bị bất ngờ nhất. Khi hệ thống chọn nhất quán sau, sẽ có khoảng thời gian dữ liệu chưa khớp nhau — và điều đó phải được thiết kế vào trải nghiệm, không phải để người dùng tự phát hiện.

Vì sao vai trò của bạn cần cái này

Vai tròBạn dùng nó để
Product Owner / PMBiết yêu cầu nào rẻ, yêu cầu nào đắt, trước khi hứa
Business AnalystHiểu vì sao một thay đổi nhỏ về nghiệp vụ lại tốn nhiều công
Head of ProductCó mặt trong quyết định kiến trúc sớm; phản ứng lại nó sau ba năm tốn hơn nhiều
Team LeadNêu danh sách "cái gì đắt khi đổi" cho đội sản phẩm biết
FounderTự xây thứ không phải lợi thế cạnh tranh là khoản chi lớn và âm thầm

Definition of done

  • Biết danh sách những thay đổi đắt trong kiến trúc hiện tại.
  • Biết nút thắt ở đâu khi lượng dùng tăng mạnh.
  • Không có phần nào chỉ một người hiểu.
  • Đã quyết rõ phần nào tự xây, phần nào mua, và ghi lý do.
  • Hệ quả của lựa chọn nhất quán được thiết kế vào trải nghiệm người dùng.

Tự kiểm 3 câu

Đọc xong rồi thì thử xem — đúng cả ba là đạt.
1. Đội nói: “để kịp release mình làm tạm cách này”. Câu nên hỏi ngay là gì?
2. Hai đội cùng cần một loại dữ liệu và mỗi đội định tự lưu một bản. Nên làm gì?
3. Hệ thống chọn “nhất quán sau” để mở rộng tốt. Với người làm sản phẩm, hệ quả cần xử lý là gì?

Khóa học liên quan (17)

Sử dụng trong vai trò

Thảo luận & tài liệu thêm 0

Chia sẻ kinh nghiệm, đặt câu hỏi, hoặc đính kèm tài liệu/YouTube giúp người khác học kỹ năng này.

Hãy là người đầu tiên chia sẻ kinh nghiệm cho kỹ năng này.

Kiểm tra kỹ năng này

Bài kiểm tra của các khóa dạy kỹ năng này
1 Quiz

Kiểm tra bài 1: Chiến lược kỹ thuật là gì — và vì sao không chỉ là việc của CTO

Bài kiểm tra của một khóa dạy kỹ năng này.

1 người đã làm
Làm bài này
2 Quiz

Kiểm tra bài 2: Nợ kỹ thuật như một khoản vay — lãi suất, kỳ hạn và khi nào nên vay

Bài kiểm tra của một khóa dạy kỹ năng này.

chưa ai làm
Làm bài này
3 Quiz

Chương 6: Kiến trúc nâng cao & sự nghiệp kiến trúc sư

Bài kiểm tra của một khóa dạy kỹ năng này.

chưa ai làm
Làm bài này
4 Quiz

Kiểm tra bài 9: Viết và trình bày một bản chiến lược kỹ thuật một trang

Bài kiểm tra của một khóa dạy kỹ năng này.

chưa ai làm
Làm bài này

Học kỹ năng này ở đâu?

Có 17 khóa dạy đúng phần này, miễn phí và bằng tiếng Việt.

Bắt đầu học