WEBSITE ĐANG PHÁT TRIỂN

Code completion là bước khởi động - đây mới là trận đấu thật sự với AI

AI coding tools đã qua 3 giai đoạn: autocomplete → chat → pair programmer chủ động. Ở mỗi giai đoạn, kỹ năng developer cần không phải là "viết code giỏi hơn" - mà là "nhìn nhận vấn đề sâu hơn". Bài này là roadmap thực tế từ 20 năm kinh nghiệm + 2 năm dùng AI hàng ngày.

Lần đầu tôi dùng Copilot và nghĩ "Ôi trời, mình sắp thất nghiệp"

Đầu năm 2023, tôi bắt đầu dùng GitHub Copilot nghiêm túc trong một dự án .NET. Ấn tượng đầu tiên - và tôi không xấu hổ thừa nhận - là tôi ngồi nhìn nó generate một đoạn LINQ query phức tạp trong 3 giây, trong khi tôi vừa tốn 15 phút để viết tương tự.

Cảm giác lúc đó là hỗn hợp kỳ lạ: phấn khích + hoang mang + một chút sợ hãi.

Phấn khích vì rõ ràng nó sẽ giúp tôi nhanh hơn. Hoang mang vì chưa biết cách dùng tốt. Và sợ hãi vì tôi nghĩ tới những developer trẻ đang học nghề - liệu họ có còn cơ hội không?

Sau 2 năm dùng đủ thứ - Copilot, Cursor, Claude Code, Aider - tôi mới thực sự có câu trả lời. Và nó không đơn giản theo chiều nào cả.


3 giai đoạn của AI coding - bạn đang ở đâu?

Nhìn lại hành trình AI trong development, tôi thấy rõ 3 giai đoạn khác nhau. Quan trọng hơn: mỗi giai đoạn đòi hỏi một bộ kỹ năng hoàn toàn khác nhau từ developer.

Giai đoạn 1: Code completion (2021–2023)

"Typeahead trên steroid." Bạn gõ vài từ, AI hoàn thành dòng code. Giao tiếp một chiều, ngắn gọn.

Skill cần lúc đó: viết code đủ rõ để AI hiểu context. Tức là naming convention tốt, comment đúng chỗ, và biết khi nào AI gợi ý sai để reject kịp thời.

Nhiều người dừng lại ở giai đoạn này - dùng Copilot như IntelliSense thông minh hơn, tắt đi khi gặp vấn đề phức tạp.

Giai đoạn 2: Chat-based coding (2023–2024)

ChatGPT, Claude, Gemini bắt đầu được dùng như "đồng nghiệp ảo". Bạn paste code, describe problem, AI explain hoặc suggest fix. Giao tiếp 2 chiều, có context, có conversation history.

Skill cần lúc này: prompt engineering + critical evaluation. Bạn không còn chỉ nhận gợi ý - bạn đang hỏi đáp với một entity có kiến thức rộng nhưng không có judgment.

Đây là nơi nhiều developer bắt đầu gặp vấn đề: copy-paste code AI mà không hiểu → bug production → hoang mang tại sao.

Giai đoạn 3: AI pair programmer (2025–hiện tại)

Cursor, Claude Code, Aider, GitHub Copilot Agent Mode - đây không còn là "gợi ý code". AI bây giờ có thể chủ động refactor multiple files, tạo test, debug, thậm chí propose architecture changes. Giao tiếp: collaborative - AI và human cùng làm việc trên cùng codebase.

Skill cần lúc này: tư duy kiến trúc + code review nghiêm túc + hiểu business context mà AI không bao giờ có.


Những con số không thể bỏ qua

Data từ 2025 mà tôi đọc và không khỏi dừng lại suy nghĩ:

  • 41% tổng số code toàn cầu hiện là AI-generated hoặc AI-assisted (Stack Overflow 2025)
  • Code do AI co-author có 1.7 lần nhiều "major issues" hơn code human viết
  • Đặc biệt: AI-generated code có 2.74 lần nhiều security vulnerabilities
  • Và điều ngược đời nhất: nghiên cứu của METR năm 2025 chỉ ra experienced developers chậm hơn 19% khi dùng AI cho task phức tạp - dù họ dự đoán sẽ nhanh hơn 24%

Con số cuối cùng không ngạc nhiên tôi lắm. Vì AI pair programming chỉ nhanh khi bạn biết rõ mình muốn gì. Nếu chưa rõ architecture, chưa hiểu business rule, chưa có mental model - bạn sẽ mất nhiều thời gian hơn để review, fix, và reject những gợi ý tưởng chừng đúng.


Vậy developer cần học những gì - thật sự?

Không phải theo kiểu checklist "học Python, học prompt engineering, học MLOps". Mà từ góc nhìn người đã làm 20 năm và đang dùng AI hàng ngày.

1. Đọc code nhanh và đọc kỹ - skill survival mới

Trước đây, bottleneck là viết code. Bây giờ bottleneck là review code. AI generate nhanh - nhưng nếu bạn không đủ nhanh và kỹ để review, bạn sẽ bị chôn vùi bởi code mình không hiểu.

Hãy luyện đọc code như đọc sách kỹ thuật: biết bỏ qua cái gì, biết zoom vào cái gì, biết mùi của code xấu ngay từ dòng đầu.

2. Security và architecture - AI yếu nhất ở đây

AI rất giỏi viết code chạy được. AI không giỏi viết code an toàn. Con số 2.74 lần nhiều security bug đủ để bạn coi trọng điều này. Trong .NET ecosystem - SQL injection, authentication misconfiguration, insecure deserialization - đây vẫn là những thứ AI hay mắc và bạn phải là người chặn lại.

3. Business context - thứ AI không bao giờ có

Tôi từng thấy AI gợi ý một solution kỹ thuật đúng 100% nhưng hoàn toàn không phù hợp với business rule của khách hàng. Bởi vì AI không biết rằng hệ thống đó có một legacy constraint xuất phát từ một decision năm 2015 mà không ai muốn đụng vào.

Không có document nào capture được điều đó. Chỉ có bạn - người đã ngồi trong phòng họp, nghe stakeholder giải thích, hiểu tại sao - mới biết.

4. Prompt thinking, không phải prompt writing

"You get what you prompt" - đúng nhưng chưa đủ. Thực ra là: you get what you THINK, expressed through your prompt.

Nếu bạn chưa tư duy rõ vấn đề, prompt của bạn sẽ mơ hồ → AI sẽ cho ra kết quả mơ hồ → bạn mất thêm thời gian sửa. Kỹ năng thật sự không phải là "prompt engineering" như một môn học riêng - mà là tư duy rõ ràng: breakdown vấn đề, define scope, identify constraints. Những thứ này đã cần thiết 20 năm trước, chỉ là nay nó quyết định chất lượng cả output của AI.


Kinh nghiệm từ dự án thực

Trong một dự án e-commerce gần đây, tôi dùng Cursor để refactor một service khá lớn. AI làm được khoảng 70% - nhanh hơn tôi ít nhất 3–4 lần cho phần đó.

30% còn lại - phần liên quan đến business logic đặc thù của khách hàng, cách hệ thống xử lý edge case với inventory, logic pricing cũ không có documentation - AI không thể làm được. Không phải vì AI kém. Mà vì không có human nào explain đúng context đó cho AI.

Và đó là khoảnh khắc tôi hiểu rõ nhất điều này:

AI amplifies what you bring to the table. Nếu bạn hiểu sâu, AI giúp bạn đi nhanh hơn rất nhiều. Nếu bạn chưa hiểu, AI giúp bạn tạo ra bug nhanh hơn.


Gửi các bạn trẻ đang học nghề

Tôi thấy nhiều bạn junior lo lắng AI sẽ lấy mất cơ hội của mình. Thực ra, tôi nghĩ ngược lại.

AI vừa "xóa" cái phần nhàm chán nhất của nghề - viết boilerplate, generate CRUD, viết test đơn giản. Đây cũng là phần trước đây junior hay bị "ném vào" để làm trong 6 tháng đầu.

Thứ còn lại - hiểu hệ thống, design tốt, communicate rõ, think deeply - là phần thú vị hơn, có giá trị hơn, và cũng khó hơn.

Nếu bạn dùng thời gian không còn phải viết boilerplate để hiểu sâu hơn về những thứ phía trên - bạn sẽ grow nhanh hơn bất kỳ thế hệ developer nào trước đây.

Nếu bạn dùng thời gian đó để ngồi đợi AI generate thêm code - tôi thực sự lo cho bạn. :)


Bạn đang ở giai đoạn nào trong hành trình với AI coding? Và thứ khó nhất khi chuyển từ "dùng AI như tool" sang "làm việc với AI như pair programmer" là gì?

Comment hoặc nhắn thẳng tôi nhé. 👇


/Son Do - believe in basic

#1percentbetter #aiarchitecture #vibecoding #pairprogramming #developerlife



Bài viết liên quan

Xem thêm
AI Integration — Góc nhìn Architect

Prompt Engineering 2026: Không phải 1 góc nhìn — mà 40 góc nhìn song song

Năm 2026, AI agents đang bùng nổ và nhiều người vội vã tuyên bố "prompt engineering đã chết". Sai hoàn toàn. Chain of Thought, flipping roles — những kỹ thuật cơ bản đó vẫn còn sống, chỉ là giờ chúng ta không chạy 1 luồng nữa, mà chạy song song 40 luồng cùng lúc. Bài này là câu chuyện về sự tiến hóa đó. Hôm rồi tôi ngồi cà phê với một ông bạn — tôi gọi anh là Khoa cho tiện — senior developer 6 năm, đang chuyển sang làm AI engineer ở một startup khá hot trong nước. Anh mở màn bằng một câu khiến tôi suýt đổ cà phê: "Anh ơi, prompt engineering giờ chết rồi. Giờ phải học AI agents mới là đúng hướng." Tôi nhìn anh, hỏi: "Chết theo nghĩa nào?" Anh giải thích: "Thì giờ người ta build hệ thống multi-agent rồi, AI tự lo với nhau, mình chỉ cần thiết kế workflow là xong. Ai còn ngồi viết prompt thủ công nữa?" Tôi im lặng một lúc, rồi hỏi ngược: "Thế mấy cái agent đó nó tự nhiên biết làm việc không? Hay vẫn cần ai đó chỉ cho nó cách nghĩ?" Anh Khoa dừng lại. Ừ nhỉ.

AI Integration — Góc nhìn Architect

Ba cấp độ làm việc với AI: automation, augmentation, và agency - bạn đang ở đâu?

Hầu hết developer đang dùng AI chỉ một cách: giao việc và chờ kết quả. Nhưng có hai cách hiệu quả hơn nhiều - và một trong số đó có thể thay đổi hoàn toàn cách bạn làm việc. Bài này là framework tôi dùng để tự đánh giá mình đang khai thác AI đến đâu. Tuần trước tôi ngồi cà phê với một anh bạn - senior developer 8 năm kinh nghiệm, tôi gọi là anh Hưng cho dễ. Anh vừa xong một sprint khá nặng, và câu đầu tiên mở miệng là: "Mày ơi, giờ tao làm việc với AI nhiều lắm, năng suất tăng rõ rệt." Tôi gật đầu, hỏi tiếp: "Bạn đang dùng theo cách nào?" Anh Hưng giải thích: ChatGPT để viết unit test. GitHub Copilot để gợi ý code. Claude để explain stack trace. Ổn đấy. Tôi hỏi tiếp: "Còn ngoài ra?" Anh im lặng một lúc. "Ngoài ra là... mình hỏi nó trả lời, xong mình copy, sửa lại, done." Câu đó làm tôi nghĩ nhiều. Không phải vì anh Hưng dùng AI sai - mà vì câu đó mô tả chính xác cách phần lớn developer giỏi đang bỏ lỡ hai phần ba giá trị của AI.