Agentic coding – nơi AI viết code, còn con người "điều phối" – đang được quảng bá như tương lai tất yếu của lập trình. Nhưng đằng sau lớp vỏ năng suất là một nghịch lý: nếu không còn trực tiếp viết code, kỹ năng lập trình sẽ đi về đâu?
Khi “orchestrator” cách xa code hơn bao giờ hết
Mô hình phổ biến hiện tại: developer viết spec, agent triển khai, con người review và điều chỉnh. Khoảng cách giữa người và code ngày càng lớn.
Điều này không chỉ là cảm nhận. Chính các nghiên cứu từ Anthropic đã chỉ ra một vấn đề cốt lõi:
"Để sử dụng Claude hiệu quả cần có sự giám sát, và việc giám sát Claude lại đòi hỏi chính những kỹ năng lập trình có thể bị mai một do lạm dụng AI."
Nguồn: https://www.anthropic.com/research
Một nghịch lý rõ ràng: muốn dùng AI tốt, cần kỹ năng lập trình mạnh. Nhưng càng phụ thuộc AI, chính kỹ năng đó lại suy giảm.

Suy giảm kỹ năng không còn là giả thuyết
Không giống những lo ngại trong quá khứ (compiler, high-level language), lần này đã có dữ liệu thực tế.
"Lập trình viên có thể dựa vào AI để ra kết quả nhanh, nhưng đánh đổi bằng việc không xây dựng được các kỹ năng cốt lõi – đặc biệt là khả năng debug khi có sự cố."
Nguồn: https://www.anthropic.com/research
Debugging – kỹ năng cốt lõi – bị ảnh hưởng trực tiếp.
Tương tự, một khảo sát từ GitHub Copilot cũng cho thấy mặt trái của năng suất:
"Lập trình viên dùng Copilot hoàn thành công việc nhanh hơn, nhưng đôi khi chất lượng code và mức độ hiểu lại giảm đi."
Nguồn: https://github.blog/2023-07-18-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/
Tốc độ tăng, nhưng độ hiểu giảm. Đây không còn là tranh luận triết học, mà là trade-off đo được.
Junior bị ảnh hưởng nặng nhất
Quá trình học lập trình vốn dựa vào “friction”: viết code, sai, debug, sửa.
Khi phần lớn code được generate:
- Ít cơ hội sai → ít cơ hội học
- Chủ yếu review → thiếu trải nghiệm thực chiến
LinkedIn Engineering cũng đã bắt đầu cảnh báo nội bộ. Sandor Nyako, Director of Software Engineering, nhận định:
"Để phát triển kỹ năng, con người cần trải qua khó khăn... Làm sao có thể nghi ngờ AI có chính xác không nếu bản thân không có tư duy phản biện?"
Nguồn: https://www.businessinsider.com
Vấn đề không nằm ở AI, mà ở việc bỏ qua quá trình rèn luyện.
Senior cũng không miễn nhiễm
Không chỉ junior. Ngay cả những developer kỳ cựu cũng bắt đầu cảm nhận sự "mất kết nối":
"Tôi không còn có một mô hình tư duy vững chắc về ứng dụng có thể làm gì và hoạt động ra sao."
Nguồn: https://simonwillison.net
Khi không còn viết hoặc đọc code một cách sâu sát, khả năng xây dựng mental model – thứ quyết định chất lượng kiến trúc – bắt đầu suy yếu.
Đây có phải chỉ là “abstraction mới”?
Một lập luận phổ biến: lập trình viên chỉ đang “move up the stack”.
Lịch sử từng lặp lại:
- Assembly → FORTRAN
- Manual → compiler
- Bare metal → cloud
Nhưng có một khác biệt quan trọng.
Trước đây:
- abstraction vẫn deterministic
- code vẫn do con người kiểm soát
Còn LLM:
"Về bản chất chỉ là một cỗ máy dự đoán token tiếp theo, không phải compiler."
Không đảm bảo tính xác định. Không đảm bảo đúng.
Đây không phải abstraction theo nghĩa truyền thống, mà là tăng ambiguity.
Vendor lock-in: rủi ro ít được nói tới
Agentic coding không chỉ là kỹ thuật, mà còn là vấn đề kinh tế.
Thực tế này phản ánh một nguy cơ:
- Code không còn là kỹ năng nội tại
- Mà phụ thuộc vào dịch vụ bên ngoài
Một khi workflow gắn chặt với model provider:
- chi phí token biến động
- phụ thuộc hạ tầng bên thứ ba
- khó rollback về cách làm truyền thống
Như nhiều developer nhận định:
"Khi bạn dùng các workflow hoàn toàn agentic, nhà cung cấp model về cơ bản đã nắm quyền kiểm soát bạn."
Đây là dạng vendor lock-in ở cấp độ kỹ năng, không chỉ tooling.
AI đang tối ưu sai thứ
Trước AI, ưu tiên của developer thường là:
- Hiểu code
- Đúng chuẩn
- Tối giản
- Tốc độ
Agentic coding đảo ngược thứ tự này. Tốc độ trở thành trọng tâm.
Nhưng tốc độ cưỡng ép thường đi kèm:
- code dài hơn
- khó review hơn
- khó maintain hơn
Copilot research cũng gián tiếp xác nhận điều này: nhanh hơn, nhưng không đồng nghĩa tốt hơn.
Kết luận: không phải từ chối AI, mà là đặt lại vai trò
AI không phải vấn đề. Cách sử dụng mới là vấn đề.
Một hướng tiếp cận đang được nhiều senior áp dụng:
- dùng AI để brainstorm, research
- vẫn trực tiếp viết và refactor code
- chỉ generate những phần có thể review ngay
Giữ khoảng cách vừa đủ để tận dụng năng suất, nhưng không đánh đổi khả năng hiểu.
"Nếu bạn giao hết việc suy nghĩ cho máy tính, bạn sẽ ngừng học hỏi và không còn tiến bộ."
Nguồn: https://www.fast.ai
Agentic coding không phải là tương lai chắc chắn. Nó là một thử nghiệm đang diễn ra.
Và lần này, thứ bị đem ra thử không phải performance hay DX, mà là chính năng lực tư duy của developer.
