美國碼農加班少很多、卻能開發出厲害的產品?讓亞馬遜工程師告訴你:會議就是生產力

作者在美國亞馬遜擔任軟體工程師,針對亞馬遜內部專案開發的工作流程進行了介紹──亞馬遜公司效率高的原因在於:與其花很多時間寫程式,不如開會把問題、需求定義清楚、寫出高質量的程式碼。
評論
photo credit: codesmith
photo credit: codesmith
評論

原文發表於 知乎討論串《為什麼美國工程師的工作比中國程序員工作輕鬆、加班少?工作效率區別大嗎?》,原作者 凱威的講堂 ,INSIDE 授權轉載。

INSIDE 編按:本篇為知乎上面千人點讚的回答,作者在美國亞馬遜擔任軟體工程師,針對亞馬遜內部專案開發的工作流程進行了介紹。作者表示「Commit 多少並不代表產出」。亞馬遜公司效率高的原因在於:與其花很多時間寫程式,不如開會把問題、需求定義清楚、寫出高品質的程式碼。

 

為什麼美國工程師的工作比中國程序員工作輕鬆、加班少?工作效率區別大嗎?

感覺美國工程師工作時間靈活、加班少,相比與中國的工程師工作,似乎壓力小很多。但是美國工程師的產出卻非常驚人的厲害(如 Google、Facebook 等)。難道是因為他們效率更高嗎?如果是,中國工程師是否能提高效率,減少加班和壓力呢?

我在血汗工廠亞馬遜工作。整個大部門有 80 多位工程師。想知道大家工作有多輕鬆,我用一張圖來回答這個問題:

這位是最忙的,這 Commit 紀錄你們看看覺得如何。(INSIDE 編按:如果這是產出最多的人的話,那他們公司工程師寫的程式真的偏少......)

我們部門是前兩年公司內部組織改革出來的新部門,目前做了七、八個全新的專案。按照血汗工廠亞馬遜的風格,SDE(Software Develop Engineer, 軟體工程師)不但每個都要 Full Stack、還要會政治手腕,寫個架構都要端出設計文件。

跟自己的小組與隔壁小組過一遍設計、大家一通留言討論後,再針對幾個服務的 API 劃分和命名繼續開會拖個一週。最後誰都說服不了誰,此時高階經理或工程師就會從希臘神話中找一個神的名字出來命名該服務,再隨機指定幾個比較順眼的 naming,會議就結束了。

除了內部 Tech 的會議,偶爾也會參與業務方的會議。在這裡也是要講政治的,你參與會議就得必須要多說話,而且無論說什麼,一定要存在感特別強烈。在會議中當邊緣人是行不通的,為什麼?邊緣人就說明你這個人沒想法、能力不行。某種意義上,聲音大就是影響力、就是能力!

接著說我們公司對軟體工程師 Full Stack 的要求。你以為我們有前端、有測試、有系統維運工程師?想太多!新開的服務,如果涉及前端頁面,就是要自己寫。 沒錯,別管你是前端工程師、後端、還是演算法工程師,首先你得是個工程師,工程師就沒有解決不了的問題。

我們做前端時也要開很多會議,跟業務人員報告進展和 Demo 產品時,業務部門可以提意見,一旦提了意見就代表 Sign Off(結束工作),不是隨意說說那麼簡單。這樣有個好處,很多東西定下來後就不能隨意改變。提需求的人是面臨很大的成本,你老是提了需求又改、又 Sign Off,不到兩個月大家就覺得你這人不可靠、會給你很差的 Feedback。

photo credit: codesmith

談完了前端,該到開發階段了吧。開發時 50% 的時間在也開發程式碼,50% 的時間在寫測試。如果沒有測試程式碼,Code Review 是說什麼也通過不了的。

寫完程式碼之後,內部有很完整的自動佈署工具,把你的單元測試、集成測試都跑完。接著佈署測試環境、gamma 環境等,包括日誌監控,都是要自己上手的,也是前文反覆說的 Full Stack 的概念。工程師在這裡真的是 do everything......

這麼一說,看起來確實挺忙的
。然而實際上── 50% 的時間都在開會,20% 時間寫 code,20% 時間寫測試碼,10% 時間處理一下佈署、監控。但從來沒有人加班。

我來總結一下: 會議就是生產力。討論得越清楚,需要重做的工作就越少。 比如系統設計,幾個小組的人一起討論清楚系統的限制、上下游系統的關係。你的問題和需求是很清晰的。工程師自己麻煩地 do everything(寫測試、系統運維監控)看似工作量繁重,實際上有效地降低了風險,極大地提高了軟體的品質。

跟中國國內公司比,中國公司最大的問題就是 管理者素質不高,對問題的定義不清楚。提需求的人沒有成本,無止境地提沒意義的需求。工程師自己開發時也追求「快、糙、猛」,提高了系統的風險。 總結來說,經理很忙、工程師很忙、測試很忙,負責營運的也受不了,就是這樣的結局。


精選熱門好工作

BD 商務開發

WeMo Scooter
臺北市.台灣

獎勵 NT$15,000

產品專員/經理 (PM)

強勝有限公司
臺北市.台灣

獎勵 NT$15,000

iOS工程師

Omlet Arcade 美商歐姆雷特
臺北市.台灣

獎勵 NT$15,000

評論