Tôi không biết liệu công việc của mình có còn tồn tại trong 10 năm tới hay không
Vào năm 2021, cảm giác làm một kỹ sư phần mềm giỏi thật tuyệt vời. Thế giới tràn ngập phần mềm, với ngày càng nhiều công ty ra đời mỗi năm cần thuê kỹ sư để viết code và vận hành hệ thống. Tôi biết mình giỏi việc này, và tôi biết mình có thể tiếp tục làm công việc này bao lâu tùy thích. Công việc mà tôi yêu thích sẽ không bao giờ cạn kiệt.
Nhưng đến năm 2026, tôi không chắc ngành kỹ thuật phần mềm sẽ tồn tại thêm một thập kỷ nữa. Hoặc nếu có, tôi dám chắc nó sẽ thay đổi nhiều hơn rất nhiều so với hai thập kỷ qua. Có thể tôi sẽ tìm ra cách để tạo cho mình một thị trường ngách béo bở trong việc giám sát các AI agent (tác nhân AI), hoặc có thể tôi sẽ phải rời khỏi ngành này hoàn toàn. Dù thế nào đi nữa, công việc mà tôi từng yêu thích đang dần biến mất.
Nếm chính liều thuốc của mình
Sẽ hơi khó coi nếu than vãn quá nhiều về điều này, vì hai lý do. Đầu tiên, toàn bộ ý nghĩa của việc trở thành một kỹ sư phần mềm giỏi vào những năm 2010 là code cung cấp đủ đòn bẩy để tự động hóa và xóa sổ các công việc khác. Đó là lý do tại sao lập trình đã (và vẫn đang) là một nghề nghiệp hái ra tiền. Việc chúng ta đang tự động hóa chính ngành công nghiệp của mình có lẽ là một kiểu "luật nhân quả". Nhưng tôi nghĩ bất kỳ kỹ sư phần mềm nào đang làm việc hiện nay cũng đều đang lo lắng về câu hỏi này:
sẽ còn lại gì cho tôi làm, một khi các AI agent đã hoàn toàn thâm nhập vào ngành?
Lý do thứ hai khiến việc than vãn trở nên khó coi là tôi có lẽ sẽ là một trong những người cuối cùng mất việc. Với tư cách là một Kỹ sư cấp cao (Staff Engineer), công việc của tôi từ lâu đã giống như việc giám sát các AI agent ngay từ trước khi khái niệm AI agent ra đời: Tôi dành phần lớn thời gian làm việc để giao tiếp bằng ngôn ngữ của con người với các kỹ sư khác, đảm bảo rằng họ đang đi đúng hướng, v.v. Các kỹ sư cấp thấp (junior) và cấp trung (mid-level) sẽ chịu thiệt thòi trước tôi. Tại sao phải thuê một nhóm kỹ sư để làm "chân tay" cho một vài nhân sự cấp cao trong khi bạn có thể thuê các phiên bản Claude Opus 4.6 với một phần nhỏ chi phí?
Đánh giá quá cao (Overshooting) và Đánh giá quá thấp (Undershooting)
Tôi nghĩ 10 năm tới của tôi sẽ bị chi phối bởi một câu hỏi:
ngành công nghệ sẽ đánh giá quá cao hay đánh giá quá thấp khả năng của các AI agent?
Nếu các công ty công nghệ
đánh giá quá thấp (undershoot) - nghĩa là họ vẫn tiếp tục tuyển dụng kỹ sư rất lâu sau khi các AI agent đã có đủ khả năng thay thế con người - thì ít nhất tôi sẽ giữ được công việc của mình lâu hơn một chút. Dù vậy, "công việc của tôi" sẽ ngày càng mang ý nghĩa là "giám sát các nhóm AI agent". Tôi sẽ dành nhiều thời gian để review code (đánh giá mã nguồn) hơn là viết code, và dành nhiều thời gian để đọc các kết quả đầu ra của mô hình AI hơn là làm việc với codebase (cơ sở mã) thực tế của mình.
Nếu các công ty công nghệ có xu hướng
đánh giá quá cao (overshoot), mọi chuyện sẽ trở nên kỳ quặc hơn nhiều, nhưng tôi có thể thực sự có một vị thế tốt hơn trong trung hạn. Trong viễn cảnh này, các công ty công nghệ sẽ đồng loạt nhận ra rằng họ đã ngừng tuyển dụng quá sớm, và phải tranh giành nhau để có đủ nhân tài kỹ thuật nhằm quản lý các codebase khổng lồ do AI tạo ra. Khi thị trường cho các kỹ sư junior cạn kiệt, tổng số lượng kỹ sư senior (dày dạn kinh nghiệm) và staff engineer sẽ chững lại, làm thúc đẩy nhu cầu đối với sức lao động của tôi (cho đến khi các mô hình AI trở nên đủ xuất sắc để thay thế tôi hoàn toàn).
Tôi có đang quá bi quan không?
Tất nhiên, ngành công nghiệp kỹ thuật phần mềm từng có vẻ như sắp chết trong quá khứ. Các ngôn ngữ lập trình bậc cao từng được cho là sẽ giúp những người không có chuyên môn kỹ thuật cũng có thể viết code. Việc thuê ngoài (outsourcing) từng được cho là sẽ giết chết nhu cầu tuyển dụng kỹ sư phần mềm ở các quốc gia có chi phí sinh hoạt cao. Không có lời tiên tri thảm họa nào trong số đó trở thành sự thật.
Tuy nhiên, tôi không nghĩ điều đó mang lại nhiều sự an ủi. Các ngành công nghiệp
thực sự sẽ chết khi chúng bị công nghệ làm cho lỗi thời. Cuối cùng, một cuộc khủng hoảng sẽ xảy đến mà ngành công nghiệp này không thể cứ thế mà vượt qua được.
Góc nhìn lạc quan nhất có lẽ là bằng một cách nào đó, nhu cầu đối với các kỹ sư phần mềm sẽ
tăng lên, vì tổng lượng phần mềm tăng lên quá nhanh, mặc dù giờ đây bạn cần ít kỹ sư hơn cho mỗi dòng code. Điều này thường được gọi là
Hiệu ứng Jevons. Theo hướng suy nghĩ này, tôi thấy một số kỹ sư nói những câu đại loại như:
"Tôi sẽ luôn có việc làm là đi dọn dẹp mớ code do AI tạo ra này".
Tôi chỉ là không nghĩ điều đó có khả năng xảy ra. Các AI agent có thể sửa lỗi (fix bug) và dọn dẹp code tốt y như khi chúng viết code mới: nghĩa là, tốt hơn nhiều kỹ sư, và đang tiến bộ qua từng tháng. Tại sao các công ty lại phải thuê kỹ sư để quản lý code do AI tạo ra thay vì chỉ cần đổ thêm nhiều AI tốt hơn vào đó?
Nếu Hiệu ứng Jevons là đúng, tôi nghĩ chúng ta sẽ phải chạm đến một ngưỡng chững lại nào đó của AI lập trình, nơi các công cụ đủ tốt để tạo ra nhiều code (chúng ta đã ở giai đoạn này rồi), nhưng không đủ tốt để bảo trì nó. Thoạt nhìn thì điều này có vẻ hợp lý. Mọi kỹ sư phần mềm đều biết rằng bảo trì code khó hơn là viết ra nó. Nhưng thật không may, tôi không nghĩ điều đó là
đúng.
Trải nghiệm cá nhân của tôi khi sử dụng các công cụ AI là chúng ngày càng giỏi hơn trong việc bảo trì code. Khoảng một năm qua, tôi đã hỏi một AI agent gần như mọi câu hỏi mà tôi có về một codebase, song song với việc tự mình tìm kiếm câu trả lời, và tôi đã thấy chúng đi từ mức vô vọng đến "đôi khi nhanh hơn tôi" rồi đến "thường nhanh hơn tôi và đôi khi còn sâu sắc hơn".
Hiện tại, vẫn còn nhiều chỗ đứng cho một kỹ sư phần mềm năng lực trong quy trình làm việc. Nhưng chỗ đứng đó đang ngày càng thu hẹp. Tôi không nghĩ có bất kỳ khả năng nào
thực sự mới mà các AI agent cần phải có để lấy đi công việc của tôi. Chúng chỉ cần trở nên tốt hơn và đáng tin cậy hơn trong việc thực hiện những gì chúng đã có thể làm. Vì vậy, thật khó để tôi tin rằng nhu cầu đối với kỹ sư phần mềm sẽ tăng lên theo thời gian thay vì giảm đi.
Vài lời cuối
Thật tệ. Tôi nhớ cái cảm giác khi công việc của mình được đảm bảo, và khi những vấn đề nghề nghiệp lớn nhất của tôi chỉ là vật lộn với những thứ như kiệt sức (burnout): những cuộc đấu tranh nội tâm, chứ không phải từ bên ngoài. Dù nói vậy, cũng thật ngớ ngẩn khi các kỹ sư phần mềm lại đi phàn nàn khi chuyến tàu tự động hóa cuối cùng cũng đuổi kịp họ.
Ít nhất tôi cảm thấy vui vì mình đã nhận ra những tháng ngày tươi đẹp khi vẫn còn đang sống trong đó. Ngay cả khi thời kỳ
lãi suất bằng 0 kết thúc khiến ngành công nghiệp này bớt dễ chịu hơn, tôi vẫn cảm thấy rất may mắn khi được làm một kỹ sư phần mềm. Ngay cả bây giờ, tôi vẫn đang ở một vị thế tốt hơn nhiều đồng nghiệp của mình, đặc biệt là những người mới chân ướt chân ráo vào nghề.
Và biết đâu đấy, có thể tôi đã sai! Tại thời điểm này, tôi hy vọng mình sai, và hy vọng rằng thực sự có một yếu tố con người
khó tả (je ne sais quoi) nào đó bắt buộc phải có để tạo ra một phần mềm tốt. Nhưng nếu không phải vậy, tôi và các đồng nghiệp của mình sẽ phải tìm một công việc khác để làm.
Edit: Bài viết này đã nhận được
một số bình luận trên Hacker News. Một số người bình luận tỏ ra hoài nghi, hoặc vì họ không nghĩ khả năng viết code của AI là quá tốt, hoặc vì họ nghĩ sự sáng tạo của con người/tư duy tổng thể/sự chú ý đến chi tiết sẽ luôn có giá trị. Những người khác cho rằng 10 năm là khoảng thời gian quá lạc quan.
Bình luận hàng đầu lặp lại sự trớ trêu mà tôi đã mô tả trong đoạn thứ ba của bài viết này.
Edit: Bài viết này cũng nhận được
một số bình luận trên subreddit r/programming của Serbia.
Nếu bạn thích bài viết này, hãy cân nhắc
đăng ký để nhận email cập nhật về các bài viết mới của tôi, hoặc
chia sẻ nó trên Hacker News.
Nguồn:
www.seangoedecke.com