
Cách triển khai mã hiệu quả với Claude Code
Tìm hiểu cách tối ưu hóa quy trình CI/CD cho các tác nhân mã hóa Bài viết Cách triển khai mã hiệu quả với Claude Code xuất hiện đầu tiên trên Towards Data Science.
Ứng dụng LLM
Cách triển khai mã hiệu quả với Claude Code
Tìm hiểu cách tối ưu hóa quy trình CI/CD cho các tác nhân viết mã.
Eivind Kjosbakken
Ngày 10/8/2026
8 phút đọc
Chia sẻ
Trong bài viết này, tôi sẽ thảo luận về cách làm cho quy trình CI/CD của bạn hiệu quả hơn để các tác nhân viết mã (coding agents) của bạn làm việc năng suất hơn.
Hiện nay, khi các tác nhân viết mã đảm nhiệm phần lớn, nếu không muốn nói là toàn bộ, mã được sử dụng cho các ứng dụng khác nhau, nút thắt cổ chai đã chuyển từ việc viết mã sang các tác vụ khác liên quan đến lập trình.
Một trong những nút thắt cổ chai chính khác là xem xét đầu ra của mã, tức là kiểm tra ứng dụng để xem xét các cập nhật đã được thêm vào nhằm đảm bảo mã mới thực sự hoạt động như mong đợi. Tuy nhiên, một tác vụ khác mà tôi nhận thấy đang ngày càng trở thành nút thắt cổ chai là CI/CD và làm việc với GitHub cũng như các triển khai (deployments).
Đây chắc chắn là một vấn đề mà cá nhân tôi đã gặp phải. Khi có nhiều tác nhân làm việc song song, cố gắng đưa mã vào môi trường phát triển hoặc sản xuất cùng lúc, việc làm cho tất cả các tác nhân hoạt động hiệu quả với nhau có thể là một thách thức. Trong bài viết này, tôi sẽ trình bày các kỹ thuật mà tôi sử dụng để làm việc hiệu quả với nhiều tác nhân song song khi hợp nhất và triển khai mã vào môi trường sản xuất.
Hình ảnh minh họa này làm nổi bật nội dung chính của bài viết. Tôi sẽ thảo luận về cách tối ưu hóa quy trình CI/CD để tận dụng tối đa các tác nhân viết mã của bạn. Hình ảnh do ChatGPT tạo.
Tại sao CI/CD đã trở thành nút thắt cổ chai
CI/CD là viết tắt của tích hợp liên tục (continuous integration) và phân phối liên tục (continuous delivery). Về cơ bản, nó đề cập đến quy trình bạn có từ sau khi viết mã và muốn triển khai mã. Do đó, điều này bao gồm việc chạy nhiều thử nghiệm, ví dụ, hợp nhất mã vào một nhánh phát triển hoặc nhánh chính, và triển khai mã.
Bạn có thể hình dung rằng trước đây, 80% thời gian của một lập trình viên được dành cho việc viết mã thực tế, đơn giản vì viết nhiều mã tốn rất nhiều thời gian.
Tuy nhiên, hiện nay điều này đã thay đổi hoàn toàn vì mã có thể được viết siêu nhanh nhờ có các tác nhân viết mã đảm nhiệm tất cả công việc này. Và nút thắt cổ chai đã chuyển sang các tác vụ khác trong kỹ thuật phần mềm. Đó là các tác vụ như:
CI/CD
Kiểm thử thủ công
Tổ chức và lập kế hoạch các tác vụ cần thực hiện
Đây chắc chắn là một sự tiến bộ. Việc các nút thắt cổ chai di chuyển sang các tác vụ khác là rất phổ biến khi các tác vụ trở nên tối ưu hơn, chẳng hạn như việc viết mã được tối ưu hóa bởi các tác nhân viết mã. Tuy nhiên, hiện nay khi nút thắt cổ chai đã chuyển sang, ví dụ, các vấn đề về CI/CD, chúng ta cần tìm cách giảm thiểu nút thắt đó và tăng tốc độ để có thể tận dụng tối đa các tác nhân viết mã này.
Vì vậy, lý do đơn giản khiến CI/CD trở thành nút thắt cổ chai chỉ là do các phần khác của lập trình đã trở nên hiệu quả hơn. Và lý do bạn nên quan tâm đến nó đương nhiên là vì CI/CD hiện chiếm một phần đáng kể thời gian của một kỹ sư phần mềm.
Cách tối ưu hóa CI/CD với các tác nhân viết mã
Bây giờ tôi sẽ bắt đầu thảo luận về các kỹ thuật khác nhau mà tôi sử dụng để tối ưu hóa CI/CD với Claude Code. Tôi sẽ trình bày các kỹ thuật chính trong các tiểu mục khác nhau dưới đây.
Tự động hóa đánh giá mã
Điều đầu tiên cần đề cập về tối ưu hóa CI/CD là các quy trình đánh giá mã (code review) nên được tự động hóa. Trong hầu hết các trường hợp, không cần đánh giá thủ công khi hợp nhất mã vào môi trường phát triển (dev environment). Điều này đơn giản vì môi trường phát triển thường được dùng để thử nghiệm, và theo quan điểm của tôi, mã được viết bởi một tác nhân lập trình như Claude Code và được đánh giá bởi một tác nhân lập trình như Codex ít có khả năng chứa lỗi hơn so với khi toàn bộ quá trình do con người thực hiện.
Điều này dựa trên kinh nghiệm khi tôi viết mã trong môi trường sản xuất và từ các số liệu định lượng về số lượng lỗi trong môi trường sản xuất. Vì lý do bảo mật, tôi không thể chia sẻ các con số chính xác này, nhưng bạn có thể tin rằng đây là trường hợp thực tế.
Chạy song song mọi thứ
Điểm thứ hai tôi muốn đề cập có lẽ đã rõ ràng với nhiều người. Tuy nhiên, bạn nên chạy song song mọi thứ có thể chạy song song. Ví dụ, bạn có thể chạy song song các bài kiểm thử và đánh giá mã, và tất cả các bài kiểm thử của bạn nên được chạy song song. Điều này nghe có vẻ rất hiển nhiên, nhưng nếu bạn yêu cầu tác nhân lập trình của mình ngay bây giờ xem xét quy trình CI/CD và tìm xem có thể tối ưu hóa điều gì thông qua việc chạy song song, thì có khả năng đáng kể rằng nhiều người có thể cải thiện hiệu quả hơn nữa chỉ với một chỉnh sửa đơn giản.
Tôi khuyến nghị bạn ngay lập tức chạy lời nhắc sau để cố gắng tối ưu hóa quy trình CI/CD của mình, điều này có thể giúp bạn tiết kiệm đáng kể thời gian. Bởi vì bạn có thể tiết kiệm một hoặc hai phút cho mỗi lần chạy quy trình CI/CD. Ví dụ, với các bài kiểm thử, những bài kiểm thử này có thể được chạy trung bình hai đến ba lần cho mỗi yêu cầu hợp nhất (PR), và bạn có thể tạo 30 PR mỗi ngày. Từ các con số này, bạn có thể dễ dàng thấy rằng điều này sẽ giúp bạn tiết kiệm một lượng lớn thời gian theo thời gian.
"Hãy xem xét quy trình CI/CD của chúng tôi và xem liệu có thể tối ưu hóa điều gì thông qua việc chạy song song. Nếu có các bài kiểm thử hoặc đánh giá mã có thể chạy song song, tôi muốn bạn cập nhật quy trình để thực hiện điều này song song miễn là nó không ảnh hưởng đến chất lượng của quy trình CI/CD."
Chụp nhanh nhánh dev để hợp nhất vào main
Một kỹ thuật khác mà tôi gần đây phải triển khai là chụp nhanh nhánh dev trước khi đưa nó vào môi trường sản xuất (prod). Một vấn đề mà tôi bắt đầu gặp phải ngày càng nhiều là khi tôi muốn tạo một PR phát hành từ nhánh dev, nhánh dev liên tục thay đổi, bởi vì tôi có quá nhiều mã được đưa vào nhánh dev liên tục. Khi tôi có khoảng 20-30 PR được đưa vào nhánh dev mỗi ngày, nhánh này tất nhiên thay đổi rất thường xuyên, và rất khó để có một nhánh tĩnh để đưa vào sản xuất mà cũng đã được kiểm thử với đánh giá thủ công.
Do đó, tôi bắt đầu triển khai cái mà tôi gọi là nhánh dev chụp nhanh.

Nguồn tin: Towards Data Science — Tác giả: Eivind Kjosbakken. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.