AI 會不會讓軟體工程師失業?微軟副總裁暨技術成員 Scott Hanselman 對這類恐慌並不陌生。
他從 1984 年開始寫程式,曾被人說「不用組合語言就不算真正的程式設計師」;後來語法上色、自動完成與 Stack Overflow 出現時,也都有人擔心工具會讓開發者失去能力。
如今輪到 AI。Hanselman 把這稱為程式設計界「第四個十年的恐慌」。他不否認工具帶來巨大改變,自己近期約 70% 的程式碼也屬於 AI 輔助產出;但在他眼中,AI 更接近新一代電動工具,而不是可以接管整套工程責任的替代者。
這讓他的觀點比「AI 會不會取代工程師」更值得討論。
當寫程式變快,工程師的價值會往哪裡移動?企業如果因此停止聘用新人,未來的資深工程師又從哪裡來?而現在準備進入軟體業的人,究竟該學提示詞、程式語言,還是更底層的能力?
AI 寫了 70% 程式碼,為何工程流程不能打折?
Hanselman 把使用 AI 寫程式想成一條光譜。一端是只求快速產出、沒有理解與驗證的「垃圾大砲」;另一端則是 AI 輔助的軟體工程,模型生成程式碼,但人類仍掌握架構、測試、審查與發布流程。
他自己的工作方式靠近後者。無論程式碼來自本人、開放原始碼貢獻者或 AI,最後都要進入同一套軟體開發生命週期,包括版本管理、程式碼簽章、自動測試與 GitHub Actions。產生程式碼的來源改變了,進入正式環境的門檻沒有因此降低。
原因在於 AI 不會自然維護整體架構。Hanselman 觀察,模型很容易迎合使用者、持續增加功能,最後建立過度龐大的物件、重複邏輯與難以維護的系統。它可以快速完成局部任務,卻不會主動替企業承擔長期技術債。
他用另一個比喻說明責任歸屬:如果網路上的陌生人送來一個 PR(pull request,程式碼變更提案),你沒有檢查就按下合併,最後破壞產品,責任不會落在陌生人身上。同樣地,AI 產生錯誤程式碼,不能成為團隊免責的理由。
AI 讓工程師能同時處理更多工作,也擴大了未經審查程式碼進入系統的風險。當每一行都不再由人親手輸入,人類的價值會轉向決定架構、設計驗證方式、辨識模型何時犯錯,以及對最終產品負責。
真正的危機:企業不聘新人,未來哪來資深工程師?
比起 AI 直接取代工程師,Hanselman 更擔心另一個可能的後果:企業若為追求短期效率而縮減初階職缺,最後可能切斷整個產業的人才梯隊。
他的問題很直接。如果現在不再聘用職涯早期的開發者,幾年後的資深工程師要從哪裡來?許多被 AI 接手的除錯、維護與簡單功能,過去正是新人理解系統、累積失敗經驗與學習工程判斷的入口。
這也重新定義資深工程師的責任。Hanselman 認為,資深者的工作不只完成更多、更難的任務,也應該「製造更多資深工程師」。假設兩名資深工程師在 5 年內交付相近成果,其中一人培養出 10 名能獨立負責的資深人才,另一人沒有,組織應該看見這項差異。
微軟正嘗試把這個想法制度化。Hanselman 提到,公司正在設計 preceptorship(由資深者正式帶領新人的培育制度),訓練資深工程師如何為新人創造學習空間;團隊也與 Microsoft Research 合作,研究能促進學習的 AI 模式,例如要求使用者自己完成部分程式碼、解釋答案或接受小測驗。
背後的關鍵問題是:新人與資深工程師應該用同一種方式操作模型嗎?資深者已有能力辨識錯誤,可以把 AI 當成加速器;新人若只追求完成任務,可能在看似順利的產出中跳過理解過程。
AI 因而帶來一組企業很難迴避的取捨。減少初階職缺可以立即降低成本,提高短期產出;但如果沒有新的培育機制,省下來的可能是今天的人力,失去的卻是明天能負責複雜系統的人。
基礎能力為何反而更重要?
如果重新從 20 多歲開始,Hanselman 會先學好 HTTP、DNS、分散式系統與死結等基礎,再練習溝通與清楚表達。這不是對舊式工程教育的懷舊,而是辨識 AI 錯誤所需的最低條件。
模型可以生成一段看似合理的程式碼,但缺乏基礎的人很難知道它在哪個假設上出錯,也無法判斷修正方案會不會破壞其他系統。當語法與樣板愈容易取得,是否理解網路如何傳遞資料、服務如何彼此依賴、失敗如何擴散,反而更能看出工程判斷的差異。
溝通能力也不只是簡報技巧。Hanselman 要求初階工程師說明:哪些程式碼由 AI 產生、自己拒絕了哪些建議、為何最後版本值得合併。 工程師必須把模型的黑箱產出,重新轉成團隊可以審查與共同承擔的決策。
Anthropic 對約 40 萬個 Claude Code 工作階段的研究,提供了相近的初步訊號。在會產生程式碼的工作階段中,軟體相關職業的驗證成功率約為 34%,其他職業約為 29%;採較寬鬆的部分成功標準時,兩者為 89% 與 88%。研究同時發現,使用者具備的領域專業愈高,愈能引導模型完成工作。
這項研究依對話內容推定職業與成功率,無法觀察成果是否真的投入正式環境,不能直接當成職場績效。不過,它至少提醒企業:AI 降低部分實作門檻,不等於專業知識已經失去價值。
作品集不能只證明「AI 做得出來」
AI 也提高了作品集的門檻。Hanselman 常看到初階求職者展示井字遊戲,或用一句提示詞生成現成產品的複製版。這類作品可以證明模型知道如何重現常見介面,卻很難看出使用者本人的工程能力。
他更看重真正可使用、可發布、可維護的專案。開發者應該能說明自己為何要做、如何處理例外、如何測試、何時發布,以及專案變舊後如何更新。作品是否龐大並非重點,關鍵是能否看見作者的判斷與照顧。
AI 可以快速產生第一版,卻不能代替一個人長期對產品負責。當每個人都能在短時間內做出漂亮的展示,持續維護、補測試、處理使用者問題與刪除不必要功能,才更能證明工程能力。
通才還是專才?T 型人才只是最後一層答案
訪談最後,主持人問 Hanselman,工程師應該成為通才還是專才。他的回答是 T 型人才:在一個領域建立足夠深度,同時在其他工具、系統與協作情境上保持廣度,像一把能處理不同問題的瑞士刀。
這個答案可以視為前面所有觀點的總結。專業深度讓工程師有能力判斷 AI 的答案是否可靠;橫向廣度則讓他理解產品需求、測試、部署、溝通與使用者影響。兩者缺一,都容易把軟體工程縮減成單純產生程式碼。
AI 正在降低寫出第一行程式碼的成本,卻沒有消除架構、責任與人才培育。工程師的未來不只取決於會不會使用模型,也取決於能否理解它、約束它,並把自己的能力傳給下一代。
資料來源:Jean Lee 專訪 Scott Hanselman、Scott Hanselman 官方簡介、Anthropic:Agentic coding and persistent returns to expertise
本文初稿為 AI 編撰,整理.編輯/先泰
