技術債不是壞事:「先跑起來再說」何時是策略,何時是最昂貴的決策陷阱
「改一個按鈕的顏色需要三個月」——這不是笑話,是無數公司的現實
一位台灣新創的 CTO 跟我說:公司第一年寫的程式碼,讓他們後來花了三年在還債。第一年為了搶時間,所有功能都「先跑起來再說」——不寫測試、不做架構設計、把所有邏輯塞在同一個檔案裡。結果兩年後,改任何一個小功能都會牽動七八個不相關的地方,新人入職半年還看不懂系統。團隊 70% 的時間在修舊 bug,剩下 30% 勉強擠出新功能。
技術債(Technical Debt)是 Ward Cunningham 創造的比喻:為了短期速度而選擇非最佳的技術方案,就像借債——短期獲得現金(速度),但未來要付利息(維護成本增加、開發速度變慢、系統不穩定)。和金融債務一樣,少量有策略地借可以加速成長,但不受控地累積會導致破產(系統必須全部重寫)。
每一個快速決策都在累積一種看不見的債。我把管理技術債的方法叫做「債務三分」(Debt Triage)——區分三種技術債,分別處理。