Code thời AI

Đây là một phần trong một project tay trái làm từ 2009 (chuyển sang git từ 2016).

Hàng ngàn giờ code và hàng ngàn commit (trong hình chỉ thể hiện thông tin về một project trong solution), chuyển từ .NET Framework với EF thô sơ đời đầu, SQL viết tay… sang một dự án .NET 10 “hiện đại” 😵 ngày nay, mà bởi chỉ làm một mình nên tồn tại vô số bug, vô số rác và vô số nợ kỹ thuật.

Vậy là quyết định thử dùng Claude để hiện đại hóa, định hướng là sẽ làm một cách triệt để, tức là giải quyết các vấn đề về kiến trúc, phụ thuộc, thư viện trước, sau đó sẽ build mới lại từng project con luôn. Và vì vẫn đang có người dùng nên quá trình này phải đảm bảo thông suốt với thời gian chuyển đổi ngắn nhất có thể, và đặt ra mục tiêu là người dùng hoàn toàn không nhận ra hệ thống đang/đã được nâng cấp.

Quá trình viết lại giờ nhanh và tốt gấp nhiều lần so với việc code tay trước đây. (mình chỉ dùng Opus Max)

Sau một thời gian nhờ Claude làm, mình đưa ra kết luận:

– Claude hoàn toàn thay thế được developer từ junior cho đến mid, thậm chí senior lạng quạng thì cũng ra chuồng gà nốt. 😁

– Claude viết code ít lỗi hơn mình viết, và nó có thể tìm và xử lý các vấn đề tương đối sâu.

– Chỉ dẫn cho nó càng kỹ, mình càng đỡ mất thời gian kiểm tra và sửa sau này. Trong nhiều yêu cầu, chỉ thẳng luôn vấn đề là gì và nằm ở file nào, nó chỉ cần sửa thì sẽ nhanh và tiết kiệm token hơn.

– Nên lên plan cẩn thận, tốt nhất là dùng chế độ Plan để tính toán xong xuôi rồi mới làm.

Tuy nhiên:

– Khó có thể giao mọi việc cho nó, mình vẫn cần quyết định nhiều vấn đề, viết code là nó nhưng quá trình phân tích vẫn là mình.

– Nếu làm các nhiệm vụ quá lớn thì mình dễ mất kiểm soát và không thể biết được công việc đang theo chiều hướng nào, nên chia nhỏ và review lại ngay sau thì hoàn thành mỗi bước.

– Vẫn phải review lại code, trừ khi hệ thống chỉ có một người dùng (là bạn), còn nếu xác định làm thật, có định hướng lâu dài thì phải review lại để nắm được tổng quan.

Nghĩ thêm:

– Nếu bạn chỉ biết CRUD, làm FE, hoặc BE đơn giản, tương lai không xa bạn sẽ bị đào thải. Bạn cần nâng cao khả năng kỹ thuật, kỹ năng mềm… Đôi khi những kỹ năng “phụ” lại là yếu tố chính để bạn cạnh tranh với những người khác.

– Sinh viên mới ra trường mà đã phải biết đủ thứ không phải là câu chuyện cười mà là sự thật. Có việc hay không không phụ thuộc việc bạn giỏi thế nào mà là bạn so với các đối thủ cạnh tranh thế nào, trong khi bạn cười thì người ta cày, và trong thời buổi ghế ít mà đít nhiều thì việc bạn không tìm được ghế chẳng có gì lạ.

– Không tuyển junior sau này lấy đâu senior? Thực sự không phải là không tuyển junior, mà là không tuyển BẠN! Vẫn có những người chăm chỉ vượt lên, doanh nghiệp vẫn cần nhân sự, nhưng chỉ những người thực sự được việc, vì họ giờ không còn cần nhiều lao động chân tay nữa 😅. Hãy thử tự hỏi: “Bỏ cái khả năng lao động cần cù ra thì bạn còn lại cái gì?”

Mình là người suy nghĩ khá thực dụng, đôi khi nói ra nghe không được “yêu thương và bao dung” lắm, nhưng mình tin cuộc sống là vậy – rất khắc nghiệt, chúng ta luôn phải chiến đấu với toàn bộ sức lực, không có chỗ cho sự lười biếng và hời hợt.

Số đầu công việc sẽ dần co lại, ảnh hưởng của nó sẽ không chừa một ai, kể cả những developer rất nhiều năm kinh nghiệm. Bạn sẽ cần mạnh mẽ hơn, chăm chỉ hơn và thậm chí cả khôn ngoan hơn.

Cố lên!

Comments

Leave a Reply

Discover more from Đào Hải Nam blog

Subscribe now to keep reading and get access to the full archive.

Continue reading