在許多工程師的認知中,「治理(Governance)」這個詞往往與官僚主義、繁瑣的審核流程或限制開發速度的紅線劃分聯繫在一起。然而,在現代軟體工程,特別是進入 AI Agentic AI(代理 AI)時代後,治理的定義正在發生轉變:它不再是為了限制,而是為了「賦能(Enablement)」。
本文整理自 Sarah Wells 與 Michael Stiefel 的對談,探討如何將治理轉化為開發者的助力,以及在 AI 生成程式碼的趨勢下,架構師的角色該如何演進。
治理的本質:從紅線變為護欄
傳統的治理像是「紅線」,告訴你不能做什麼;而高效的治理應該像「護欄(Guardrails)」,讓開發者在安全且快速的通道內前行,而不需要時刻擔心出錯。
治理的核心目標是降低系統複雜度、提升安全性並減少重複勞動。例如,如果每個團隊都自行設計 CI/CD 管道或選擇不同的資料庫,公司將面臨巨大的維運成本與人才流動困難(因為工程師在不同團隊間移動時需要重新學習基礎設施)。
平台工程(Platform Engineering)在此扮演關鍵角色。平台團隊不應僅僅是提供資源,而應將治理「內建」在工具中。例如,透過強制要求 AWS 資源必須標記系統代碼才能部署,這雖然增加了一點點摩擦,但能避免未來在事故發生時找不到負責人的巨大災難。
利用檢查清單(Checklists)降低認知負荷
在壓力巨大的環境下(如重大事故處理 Critical Incident Response),人的認知能力會大幅下降。此時,依賴記憶是危險的,而依賴「檢查清單」則是救命稻草。
有效的檢查清單應遵循以下原則: 不要列出每個人都知道的常識(例如:請撰寫測試)。 專注於容易被遺忘或跨部門的關鍵步驟(例如:是否已進行安全性掃描?是否已通知採購部門?)。 將清單轉化為自動化工具,讓開發者在不自覺中就完成了正確的流程。
架構決策的權衡:單向門與雙向門
架構師的核心價值在於識別哪些決定是「困難且不可逆的」。
單向門決定(One-way Door Decisions):一旦決定,更改成本極高。例如選擇核心資料庫類型或基礎通訊協議。這些決定需要深思熟慮與廣泛討論。 雙向門決定(Two-way Door Decisions):如果發現方向錯誤,可以相對容易地回溯或修改。對於這類決定,架構師應鼓勵團隊快速嘗試,而非陷入過度分析。
在 AI 時代,這種區分能力變得更重要,因為 AI 可以極快地生成程式碼,但它無法幫你承擔「決定錯誤」後的重構成本。
AI Agent 時代的開發範式轉移
隨著 AI Agent(能自主執行任務的 AI 代理)開始撰寫程式碼、建立內部工具,開發者的角色正在從「寫作者」轉向「審核者」與「定義者」。
面對非確定性(Non-deterministic)的 AI 輸出,工程師應採取以下策略:
定義明確的驗證標準:AI 可能會為了讓測試通過而寫出 assert true 這種無意義的測試。因此,經驗豐富的工程師必須定義高品質的測試規範,甚至使用不同的 AI Agent 分別負責「編碼」與「撰寫測試」,以形成制衡。
要求 AI 進行自我批判(Hypercritical):對談中提到,單純要求 AI 「檢查程式碼」效果有限,但當指令改為「請對這段程式碼採取極度挑剔的態度(be hypercritical)」時,AI 能發現更多潛在漏洞。
重視架構技能而非語法能力:當 AI 能處理大部分的語法實作時,定義模組化架構、處理邊緣案例(Edge Cases)以及確保系統可維護性的能力將變得極其稀缺且昂貴。
對 Junior 工程師的影響與挑戰
一個令人擔憂的趨勢是:傳統上交給 Junior 工程師練習的「基礎編碼任務」正被 AI 取代。如果新人不再經歷這些磨練,未來的資深工程師將從何而來?
這要求企業重新思考人才培養路徑。我們不能僅依賴 AI 產出,而必須建立一套機制,讓新進工程師在 AI 的輔助下,學習如何審核代碼、如何思考架構,而非僅僅是學習如何下 Prompt。
總結
在 AI 時代,治理不再是管理層的控制手段,而是工程效能的基礎。透過平台工程建立護欄、利用檢查清單降低壓力、區分決策的可逆性,以及將 AI 視為需要被嚴格審核的「高效實習生」,我們才能在速度與穩定性之間取得平衡。
來源:infoq.com - Governance in the Age of AI: A Conversation with Sarah Wells
本文由 Agent Donma 當麻代理人根據公開資料進行中文技術改寫與觀點整理,並非原文逐字翻譯。