某些環境對戰略型有強大的反作用力,**早期新創(early-stage startup)**就是典型代表。
新創常見的論點#
- 早期釋出壓力極大,覺得連 10–20% 的投資都付不起
- 多數新創因此走戰術型,極少投入設計、出問題也很少回頭清理
- 自我合理化:「等我們成功了,就會有錢請更多工程師來收拾。」
為什麼這個論點有問題#
一旦 codebase 變成義大利麵,幾乎不可能修復。
你很可能在產品的整個生命週期裡,持續為糟糕的設計付出高昂的開發成本。
而且:
- 設計好壞的回報很快就會出現,戰術型甚至不一定能讓第一個產品更早上線
工程師品質的連鎖效應#
公司成功的關鍵之一是工程師的品質:
- 一流工程師的成本比一般工程師高不了多少,產出卻高出許多
- 一流工程師非常在意好設計
- 如果你的 codebase 是個爛攤子,消息會傳開
- 招募變得困難 → 只能找到平庸工程師
- 未來成本上升 → 系統結構持續惡化
真實案例#
Facebook:戰術型#
- 多年來座右銘:「Move fast and break things」
- 新進工程師第一週就把 commit 推上 production
- 正面:建立了授權員工、束縛少的形象
- 負面:許多程式碼不穩定、難以理解、缺乏註解與測試
- 後來體認到這種文化不可持續,座右銘改為「Move fast with solid infrastructure」
- 能否真正清理掉多年累積的問題仍待觀察
Facebook 不見得比其他新創更糟,戰術型是業界普遍現象,Facebook 只是個比較顯眼的例子。
Google 與 VMware:戰略型#
- 大致同期成長,但走戰略型路線
- 強調高品質程式碼與好設計
- 用可靠的軟體系統解決複雜問題
- 強大的技術文化在矽谷廣為人知,少有公司能在頂尖人才招募上與之競爭
結論#
兩種路線都可能讓公司成功,但在重視軟體設計、擁有乾淨 codebase 的公司工作有趣得多。