
AI và ngành lập trình - Điều đáng suy nghĩ không phải là AI
Mở bài
Dạo gần đây, tôi thấy AI xuất hiện ở khắp mọi nơi trong ngành phần mềm.
Claude Code, Cursor, MCP, Agent, Vibe Coding... Những khái niệm này xuất hiện ngày càng nhiều trong các cuộc họp, email và thảo luận kỹ thuật.
Điều thú vị là tôi không thuộc nhóm phản đối AI.
Ngược lại, tôi đã sử dụng AI khá nhiều trong công việc hằng ngày. Tôi từng để AI đọc code, debug, viết tài liệu, review ý tưởng, phân tích hệ thống và thử nghiệm nhiều workflow khác nhau.
Có lẽ chính vì đã sử dụng đủ nhiều nên tôi bắt đầu nhìn thấy rõ hơn cả điểm mạnh lẫn giới hạn của nó.
AI thực sự rất mạnh.
Nhưng có lẽ không mạnh theo cách mà nhiều người đang kỳ vọng.
AI đang thực sự thay đổi điều gì
Điều rõ ràng nhất mà AI mang lại là giảm đáng kể chi phí tạo ra code.
Những việc từng mất vài giờ hoặc vài ngày nay có thể hoàn thành nhanh hơn rất nhiều.
Một component giao diện.
Một API đơn giản.
Một script xử lý dữ liệu.
Một bộ test cơ bản.
Tất cả đều có thể được tạo ra với tốc độ mà vài năm trước khó có thể tưởng tượng.
Tuy nhiên, lượng code tăng lên không đồng nghĩa với lượng giá trị tăng lên.
Trong nhiều trường hợp, technical debt cũng có thể tăng với tốc độ tương tự nếu thiếu sự kiểm soát và định hướng phù hợp.
AI không thay thế kỹ sư
Tôi cho rằng AI đang thay thế một phần công việc của kỹ sư, chứ chưa thay thế được kỹ sư.
Đó là hai khái niệm rất khác nhau.
Nếu công việc chủ yếu xoay quanh:
Chuyển thiết kế thành giao diện
Viết CRUD
Tạo boilerplate
Xử lý các tác vụ lặp lại
Thì AI đang tạo ra sự thay đổi rất lớn.
Nhưng khi bước lên các tầng cao hơn:
Thiết kế hệ thống
Quản lý độ phức tạp
Đánh đổi giữa các giải pháp
Hiểu bài toán kinh doanh
Ra quyết định trong điều kiện thiếu dữ liệu
Thì vai trò của con người vẫn còn rất quan trọng.
AI giỏi tạo ra câu trả lời.
Con người vẫn là bên quyết định câu hỏi nào thực sự đáng để trả lời.
Điều đáng suy nghĩ nhất
Điều khiến tôi suy nghĩ không phải là AI viết code nhanh đến mức nào.
Mà là việc AI đang làm thay đổi cách chúng ta đánh giá năng lực.
Ngày trước, để tạo ra một hệ thống trông có vẻ phức tạp, người ta thường phải thực sự hiểu nó.
Ngày nay, AI có thể giúp tạo ra những sản phẩm nhìn khá thuyết phục chỉ trong thời gian ngắn.
Điều đó làm khoảng cách bên ngoài giữa các lập trình viên bị thu hẹp lại.
Nhưng khoảng cách bên trong thì không hẳn như vậy.
Một hệ thống được AI tạo ra vẫn cần người chịu trách nhiệm khi xảy ra sự cố.
Một kiến trúc chưa phù hợp vẫn sẽ gây ra vấn đề về lâu dài.
Một quyết định kỹ thuật chưa tốt vẫn là một quyết định chưa tốt, bất kể nó được đưa ra bởi con người hay được hỗ trợ bởi AI.
Vấn đề của ngành phần mềm chưa bao giờ chỉ là code
Trong nhiều năm làm nghề, tôi hiếm khi thấy một dự án thất bại chỉ vì thiếu code.
Ngược lại, những nguyên nhân thường gặp hơn là:
Thiếu tư duy hệ thống
Thiếu giao tiếp hiệu quả
Thiếu trách nhiệm
Thiếu khả năng ra quyết định
AI hiện tại chưa giải quyết được những vấn đề này.
Nó giúp chúng ta tạo ra code nhanh hơn.
Nhưng nếu hướng đi ban đầu đã sai, việc đi nhanh hơn chưa chắc giúp chúng ta đến đúng nơi.
Tôi có lạc quan về AI không?
Có.
Tôi khá lạc quan.
Tôi tin AI sẽ tiếp tục thay đổi ngành phần mềm trong nhiều năm tới và tạo ra những cách làm việc hoàn toàn mới.
Nhưng điều khiến tôi lạc quan không phải vì AI có thể viết code.
Mà vì AI đang buộc chúng ta phải đối mặt với một câu hỏi thú vị hơn:
Nếu việc viết code không còn là lợi thế cạnh tranh lớn nhất, vậy giá trị thực sự của một kỹ sư phần mềm nằm ở đâu?
Có lẽ trong tương lai, câu trả lời sẽ ngày càng rõ hơn.
Không nằm ở tốc độ gõ bàn phím.
Mà nằm ở khả năng hiểu hệ thống, hiểu con người, hiểu vấn đề và đưa ra những quyết định đúng đắn khi không ai có đủ dữ liệu để chắc chắn mình đúng.
Và có lẽ, đó mới là những kỹ năng khó thay thế nhất - mà kỳ lạ thay, đó lại là những thứ ít liên quan nhất đến AI.

