WEBSITE ĐANG PHÁT TRIỂN

Khi AI xóa rào giữa PM, tester và dev – vai trò nào còn lại?

AI đang xóa những bức rào mà ngành phần mềm xây suốt hai mươi năm qua giữa PM, tester và dev. PM giờ đọc được code, tester viết được test script tự động, dev phải involve vào product và test. Đây không phải "AI thay thế lập trình viên" – mà là AI làm mỏng đi lớp rào giới giữa các vai trò. Và câu hỏi thực sự không phải "vai trò nào sẽ chết", mà là "vai trò nào còn lại khi đã xóa rào". Hôm trước tôi ngồi xem sprint planning của team, một cảnh tượng mà mười năm trước sẽ rất khó xảy ra. PM – người vốn chỉ quen với Figma, user story và Jira board – đang mở VS Code đọc PR diff của dev. Cô ấy không phải dân kỹ thuật, nhưng sau khi team mời cô ấy thử Cursor vài tuần, giờ cô ấy tự đọc được phần lớn thay đổi, comment trực tiếp vào file: "cái này ảnh hưởng đến flow checkout, tôi đoán user sẽ bỏ ngang tại bước này". Cùng sprint đó, anh tester – người trước giờ không đụng vào code – tự push một cái test script Playwright lên repo. Anh ấy nói: "Tôi thấy user flow này dễ vỡ, tôi record xong rồi AI generate code test cho tôi, tôi review lại và push lên". Dev đọc, comment nhẹ: "thiếu case negative", tester sửa, merge. Một ngày bình thường. Và dev – bạn dev năm thứ hai trong team – cuối ngày ngồi viết một cái product brief nháp cho feature nhỏ mà PM đang bận. Không phải spec hoàn chỉnh, chỉ là một cái draft. PM nhìn qua, góp ý, hai người sửa lại cùng nhau. Tôi ngồi đó và thấy một thứ mà suốt hai mươi năm trong nghề tôi chưa từng thấy rõ ràng đến vậy: ranh giới giữa ba vai trò – PM, tester, dev – đang tan ra. Không phải vì ai đó quyết định sáp nhập phòng ban. Mà vì công cụ đã cho phép mỗi người vượt qua cái rào đó dễ dàng hơn bao giờ hết.

Khi AI xóa rào giữa PM, tester và dev – vai trò nào còn lại?

Cái rào giữa các vai trò không phải tự nhiên có

Để hiểu chuyện gì đang xảy ra, tôi cần quay lại một chút.

Ngành phần mềm chúng ta xây dựng những cái rào này không phải vì lý do kỹ thuật. Mà vì lý do tổ chức.

PM/BA tách ra khỏi dev vì dev ngày xưa thiếu, PM/BA giỏi khảo sát nhưng không giỏi code, nên tối ưu nhất là phân vai. Tester tách ra vì test là một nghề riêng – có phương pháp, có mindset, có kỹ thuật chuyên biệt (boundary, equivalence partition, exploratory testing…). Dev tách biệt khỏi product vì "để dev tập trung code thôi cho tốt".

Hồi tôi mới ra trường, dự án nhỏ, team 3-4 người, một người kiêm cả code, khảo sát, test và triển khai. Tôi không có PM riêng, không có tester riêng. Mọi thứ gói trong một đầu người.

Rồi team lớn dần. Quy trình được cài đặt. Role được tách ra. Rào giới được dựng lên – không phải bằng gạch, mà bằng "đó không phải việc của tôi".

Và bây giờ, AI đang phá những cái rào đó. Không phải vì công nghệ quá mạnh – mà vì công nghệ làm cho việc "vượt rào" trở nên rẻ đến mức không ai phải nghĩ nhiều khi làm.

PM giờ đọc được code – và đó không phải là chuyện nhỏ

Cách đây 5 năm, một PM mở file code sẽ thấy như đọc chữ cái Maya cổ đại. Ngôn ngữ khác, cú pháp khác, mental model khác. PM chỉ có thể giao tiếp với dev qua "spec", và cái spec đó thường là bản dịch một chiều từ ngôn ngữ business sang ngôn ngữ kỹ thuật – mà dịch sai thì dev vẫn phải tự hiểu lại.

Giờ thì khác.

Một PM có Cursor, GitHub Copilot hay Claude Code trong tay có thể mở một file React, đọc phần lớn logic, đặt câu hỏi "nếu user click vào đây thì state nào thay đổi", và nhận được câu trả lời. Không phải lúc nào cũng chính xác – nhưng đủ tốt để PM nắm được hệ thống đang nói gì.

Và khi PM hiểu code, điều kỳ lạ xảy ra: PM không cần phải trở thành dev. PM vẫn là PM. Nhưng giờ PM là một PM có thể đọc, đánh giá, và đặt câu hỏi có chiều sâu hơn về technical trade-off.

Có một bạn PM từng chia sẻ với tôi: "Trước đây tôi viết spec kiểu 'làm cho hệ thống recommend tốt hơn'. Giờ tôi viết spec kiểu 'khi user có 5 lượt click trong 30 giây, model X sẽ recall từ cache Y và trả về top 5 item với confidence > 0.7'. Cùng là một feature, nhưng spec thứ hai dev làm trong 2 ngày, spec đầu làm trong 2 tuần và đi 3 vòng sửa".

Đó không phải PM trở thành dev. Đó là PM đang trở thành một PM khác – một PM có cùng công cụ với dev.

Và điều tương tự đang xảy ra ở chiều ngược lại.

Tester không còn đứng ngoài codebase

Sự phân bổ giữa dev và tester đã thay đổi mạnh trong vài năm qua, theo chiều tester ngày càng mỏng đi. Nếu mười năm trước gần như team nào cũng có tester riêng và số lượng tương xứng với dev, thì giờ nhiều team nhỏ chỉ có một tester cho cả nhóm hoặc thậm chí không có ai chuyên trách. Stack Overflow Developer Survey 2025 (gần 50.000 người tham gia, 177 quốc gia) ghi nhận QA/Test chỉ chiếm khoảng 8.4% tổng số người trả lời, với mức lương trung vị cũng thấp hơn đáng kể so với các vai trò khác. Hướng đi rõ ràng: vai trò tester truyền thống đang bị nén lại.

Con số này không phải vì AI "giết chết" tester. Mà vì AI đã thay đổi hoàn toàn cách test được thực hiện.

Cách đây 5 năm, một tester giỏi là người viết manual test case tỉ mỉ trong Excel, biết cách exploratory test, và đặt bug chính xác cho dev fix. Bây giờ, một tester giỏi là người:

  • Dùng Playwright + Codegen để record user flow → tự động generate test script
  • Dùng AI để generate test case từ acceptance criteria
  • Dùng property-based testing để cover edge case mà manual test không bao giờ nghĩ tới
  • Đọc được code test do AI generate, sửa và bổ sung

Anh tester tôi vừa nhắc ở đầu bài – anh ấy không trở thành dev. Nhưng anh ấy không còn đứng ngoài codebase. Repo giờ có cả code test của dev và code test của anh ấy, cùng review chung trong PR.

Và quan trọng hơn: anh ấy không phải viết toàn bộ test script. AI generate, anh ấy review và chỉnh. Công việc tester không mất đi – nó chuyển từ "viết test" sang "kiểm soát chất lượng test mà AI viết".

Đây là chi tiết quan trọng mà nhiều bạn bỏ qua khi bàn về AI và nghề tester. Không phải AI thay thế tester. Mà là AI làm cho tester có thể mở rộng phạm vi ảnh hưởng của mình – từ test thủ công sang cả design test và review automation.

Dev phải involve vào product và test – và đó là lực cản lớn nhất

Đây là phần khó nhất, và cũng là phần mà nhiều bạn dev trẻ sẽ thấy… không thoải mái.

PM giờ đọc được code. Tester giờ viết được test. Câu hỏi ngược lại: dev có đang involve vào product và test không?

Câu trả lời: phải. Không phải vì sếp yêu cầu. Mà vì nếu không, dev sẽ tụt lại.

Lý do rất đơn giản: khi AI generate code, dev không còn là người duy nhất viết code nữa. PM có thể viết được một cái prototype đơn giản. Tester có thể viết được test script. Designer có thể generate UI code. Cái mà dev làm tốt nhất không còn là "code" – mà là hiểu product, đánh giá trade-off, và đảm bảo chất lượng.

Một dev giỏi năm 2026 không chỉ code. Dev giỏi:

  • Đọc và hiểu user story đủ sâu để đặt câu hỏi với PM: "case này user làm gì?", "metric thành công là gì?", "có cần support offline không?"
  • Tự viết test cho feature của mình – không phải vì "test là việc của tester", mà vì AI không biết business logic sâu bằng người viết feature
  • Review code của chính mình trước khi push, vì AI đã generate quá nhiều code mà dev không đọc hết

Tôi đã nói chuyện với vài team lead về điều này. Một bạn nói thẳng: "Một năm trước tôi chỉ review code của dev. Giờ tôi review cả spec của PM, test của tester, và UI prompt của designer. Công việc của tôi không nhẹ đi – nó thay đổi hình dạng".

"Cognitive debt" – cái giá của việc xóa rào mà không có nền tảng

Nhưng tôi phải nói thẳng một điều: không phải ai xóa rào cũng tốt.

Có một nghiên cứu pre-print từ MIT Media Lab (Kosmyna et al., 2025, arXiv:2506.08872) mà tôi đọc gần đây làm tôi dừng lại khá lâu. Họ dùng EEG để đo hoạt động não của 54 người viết essay, chia làm 4 nhóm:

  • Brain-only (không dùng AI): kết nối neural cao, recall trung bình 92%, ownership cực cao
  • Search-assisted (Google/Wiki): kết nối neural trung bình, recall ~74%
  • AI-Dependent (để AI viết gần hết): kết nối neural yếu, recall chỉ 17%, ownership rất thấp
  • AI-Augmented (tự viết trước, rồi dùng AI để cải thiện): kết nối neural moderate-high, recall ~68%

Có một chi tiết đáng suy ngẫm: trong nhóm AI-Dependent, 83% số người không thể quote lại đoạn văn họ vừa "viết" với AI, ngay sau khi viết xong. Họ đã mất quyền sở hữu với chính sản phẩm của mình.

Nghiên cứu này chưa peer-review, sample size nhỏ, và cần thận trọng khi diễn giải. Nhưng nó gợi lên một câu hỏi mà tôi nghĩ team nào cũng nên tự hỏi:

Khi PM đọc code bằng AI, tester viết test bằng AI, dev viết code bằng AI – ai là người thực sự hiểu sản phẩm?

Nếu tất cả mọi người đều phụ thuộc AI để vượt qua rào giới của mình, thì không ai thực sự vượt qua. Mọi người đều ở trên AI – không ai đứng trên đất.

Đây là cognitive debt mà nghiên cứu MIT gọi tên: khoản nợ về nhận thức tích lũy khi chúng ta để AI làm thay những việc mà lẽ ra chúng ta phải tự hiểu.

Vai trò nào còn lại khi đã xóa rào?

Tôi nghĩ nhiều về câu hỏi này trong vài tháng qua. Và đây là cách tôi nhìn.

Không phải vai trò nào "chết". Cả PM, tester, dev đều vẫn ở đó. Nhưng hình dạng của mỗi vai trò đang thay đổi:

  • PM không còn là người viết spec rồi ném qua tường cho dev. PM là người hiểu đủ sâu để đồng thiết kế với dev – và biết khi nào nên nhường quyết định kỹ thuật cho dev, khi nào cần đặt câu hỏi sâu hơn. PM giỏi là PM có thể "đọc" được codebase và nói được business impact.
  • Tester không còn là người ngồi viết test case thủ công. Tester giỏi là người thiết kế test strategy, kiểm soát chất lượng test mà AI sinh ra, và cover những khu vực mà AI chưa biết cách test (security, accessibility, edge case business-specific).
  • Dev không còn là người code nhiều nhất. Dev giỏi là người hiểu product đủ sâu để quyết định nên build gì, build như thế nào, và khi nào nên dừng lại. Dev vẫn code – nhưng code giờ chỉ là một phần công việc, không phải toàn bộ.

Nói cách khác: AI không xóa vai trò, AI xóa rào giới giữa vai trò. Và khi rào giới mỏng đi, mỗi người phải tự quyết định mình muốn mở rộng sang phía nào.

Một số dev sẽ mở rộng sang product. Một số PM sẽ mở rộng sang technical. Một số tester sẽ trở thành dev thực thụ. Một số khác sẽ đào sâu vào chuyên môn – security, performance, data – để trở thành người không thể bị thay thế.

Không có con đường nào đúng cho tất cả mọi người.

Gửi các bạn đang xây team trong kỷ nguyên AI

Tôi không có câu trả lời gọn cho team nào đang vật lộn với câu hỏi "tổ chức thế nào giờ". Nhưng có vài thứ tôi thấy các team đang làm tốt:

1. Không ai bị "giữ trong rào" nữa. Team tốt là team nơi PM được khuyến khích đọc code, tester được khuyến khích commit, dev được khuyến khích hỏi về product. Đừng xây policy cấm ai đó vượt rào.

2. Nhưng mỗi người vẫn phải có "nền" của mình. AI giúp bạn vượt rào nhanh hơn. Nhưng nếu bạn không có nền, bạn đang đứng trên AI chứ không phải đứng trên đất. PM phải hiểu business. Tester phải hiểu test methodology. Dev phải hiểu system design. AI là đòn bẩy, không phải nền móng.

3. Cognitive debt là thật. Đừng để cả team phụ thuộc AI để "biết" điều mà lẽ ra phải tự biết. Một dự án mà ai cũng dùng AI để hiểu code của nhau, thì không ai thực sự hiểu code. Đầu tư vào việc tự đọc, tự test, tự phân tích – dù AI có thể làm nhanh hơn.

4. Định vị lại bằng câu hỏi "tôi giải quyết vấn đề gì", không phải "tôi làm công việc gì". PM giỏi không phải người viết spec hay. PM giỏi là người giúp team build đúng thứ. Dev giỏi không phải người code nhiều. Dev giỏi là người giúp team hiểu được sản phẩm của mình.

Tôi nghĩ đến một ngày nào đó, khi nhìn lại giai đoạn này, chúng ta sẽ thấy đây là một trong những cuộc tái cấu trúc lao động thú vị nhất trong ngành phần mềm. Ranh giới mềm đi, vai trò nới ra, mỗi người tự định hình bản thân trong tầm nhìn của công cụ.

Nhưng – và đây là điều cuối tôi muốn nói – đừng nhầm "rào mềm" với "không có nền". Một người có thể vượt rào nhanh bằng AI, nhưng nếu không có căn bản, thì khi AI sai, người đó cũng không nhận ra điều đó.

Các bạn đang sống trong giai đoạn thú vị nhất của ngành. Đừng lãng phí nó bằng cách chỉ ngồi nhìn AI làm.

Bạn đang chọn mở rộng sang phía nào – product, kỹ thuật, hay chuyên sâu vào một lĩnh vực mà AI chưa chạm tới?

/Son Do – believe in basic

#1percentbetter #believeinbasic #careercraft #aiforsoftwareteams #developerlife



Bài viết liên quan

Xem thêm
Career & Craft — Sự nghiệp & Nghề Lập trình

Khi nhà nhà vibe code – thứ giúp bạn vượt trội vẫn là căn bản

Vibe coding đang trở thành chuẩn mới. Nhưng khi AI viết code cho tất cả mọi người, thứ duy nhất còn phân biệt developer giỏi và developer bình thường chính là nền tảng kỹ thuật. Căn bản không lỗi thời – nó càng quý hơn khi công cụ làm thay tất cả phần ngọn. Năm đầu tiên đi làm, tôi không biết mình là frontend developer hay backend developer. Không phải vì tôi không được hỏi. Mà vì không ai hỏi. Không có job description kiểu đó. Không có team frontend riêng, backend riêng, QA riêng. Chỉ có tôi, một cái máy tính Dell cũ, và một danh sách công việc dài hơn cả ngày làm việc. Hôm nay code module đăng ký sinh viên. Ngày mai lao đến trường Cao đẳng – khách hàng của chúng tôi – để ngồi cùng phòng Đào tạo, hỏi họ muốn in bảng điểm theo định dạng nào. Tuần sau bê máy tính qua từng phòng ban để cài đặt, hướng dẫn trực tiếp. Rồi lại về, mở IDE, fix bug mà thầy Hiệu phó vừa báo sáng nay. Không phân role. Không có "đó là việc của team khác". Không có ticket system để tạo ticket rồi chờ. Chỉ có bài toán và người giải nó – là tôi. Hơn hai mươi năm sau, tôi đọc bài viết về vibe coding và thấy buồn cười. Buồn cười theo kiểu: "Ủa, vòng này không quen à?" Vibe coding – từ được Collins English Dictionary chọn là "Word of the Year 2025" – ngắn gọn là: dùng AI để generate code bằng cách mô tả yêu cầu bằng ngôn ngữ tự nhiên. Bạn viết prompt, AI viết code, bạn chạy thử và tinh chỉnh. Không cần nhớ cú pháp. Không cần tra Stack Overflow từng function. Nhanh hơn, gọn hơn, sexy hơn. Và đi kèm với đó, developer ngày nay đang trở thành người làm tất cả – một lần nữa. Không còn ranh giới rõ ràng giữa frontend dev và backend dev. Một người với AI trong tay có thể build cả một product từ đầu đến cuối. Tự viết code, tự test, tự review, tự phân tích yêu cầu, đôi khi còn kiêm luôn PM. Giống y chang ngày tôi mới ra trường. Chỉ khác là ngày đó không có AI – tôi phải tự học tất cả bằng cách làm thật, sai thật, sửa thật.