[譯] 如果你不想走管理路線,程式設計師職涯要如何成長?

softnshare發表於2019-02-28

原文 : The Secret to Growing Your Engineering Career If You Don`t Want to Manage

作者: Edmond Lau ,The Effective Engineer 作者。 Soft & Share 獲作者授權翻譯。

在你的一生中,持續待在軟體工程師這個職位是一個好的職涯選擇嗎?或是你必須轉換到管理職位以繼續攀登工程生涯的階梯?這就是最近在 Quora 上工程師想知道的事,並且這是一個重要的且值得解決的問題。特別是那些對於管理群眾不會感到興奮的人。

好訊息是持續擔任軟體工程師的職位並且不用選擇管理這個職位是一個很好的職涯選擇。然而如果你想穿透所謂透明天花板的話,不要指望單憑多年的技術經驗攀登職涯階梯。以下是一個粗略的模型公式,你的職涯成就與你所創造的價值成正比

技術能力 + 經驗 ≠ 影響力

在 Google 這樣的公司,擁有超過 10 年以上經驗的工程師經常會問為什麼他們在職涯階梯仍然只是一名資深軟體工程師?在他/她們早些年工作職位晉升上似乎很快是發生什麼事?為什麼他們有些同儕會獲得提拔?

這些工程師特別是那些不選擇管理職位的工程師所犯的其中一個最大的錯誤-認為技術能力加上經驗等同增加影響力。他們守住一個信念,如果他們持續做好工作,他們最後將會得到職位晉升的獎賞。這種心智模式是有缺陷的,原因有二

第一,你寫程式和建構軟體的技術能力隨著時間維持在平穩狀態(譯註 :也等於是沒有陡峭的成長狀態)。當你第一次剛開始工作的時候,你經常會犯了技術上的錯誤。每一個小專案都具有學習機會以砥礪你的程式設計技能。隨著時間進展,你在程式設計和軟體設計上更加熟練並且很少犯錯。所以你的早期職涯階梯晉升是你早期技術學習反映的結果。過了 10 年以後,你還是會學習並且可能還會選擇新的程式設計框架和語言-但是你的能力進展和提升是不會像第一年那樣地引人注目。

第二,經驗並不會直接轉換成影響力。如果從現在開始算,10 或 20 年後,你還是在解決同樣的擴充套件( scale )和規模( scope )的問題如同你今天正在處理的一樣,那麼你並沒有增加你的能力去創造影響力。況且如果你無法創造更多的價值,為什麼僱主願意付給你更高的薪水相較於沒有那方面經驗的人?這個觀察是獨立於產業或是職業。

保持你正在做的事是很容易,舒適,甚至是有樂趣的- 而且它可以是一個合理的生活方式決定,如果你寧願把精力花在別的地方 – 但是你也無法期待你的職涯會自己成長。重要的不是有多少年的經驗,而是你創造創造了多少的價值。為了讓你的職涯保持成長,你必須保持追尋新的方法去增加你的影響力。

管理只是一個槓桿點來增加你的影響力

轉換到管理工作是一種方法 – 但不是唯一的方法- 對於在職涯有一個成功的發展而言。許多工程師成為管理者,因為管理工作提供了一個明顯的和明確的槓桿點來擴充套件你的影響力。當團隊成長的時候是需要管理者的,並且有多年的技術開發經驗對於在發展管理技能是一項很有用的資產。作為一名管理者,你對部屬有影響力,而且還直接主導他們的工作-進一步說,如果你是一位好的管理者的話,你增加了每位團隊成員所創造出來的價值。如果那個增加的價值的總和,超過了你以一位獨立貢獻者的角色所能創造的,你的職涯在總體上是向前進的。

然而管理並不是職涯成長的唯一途徑,也不是每一位強大的工程師適合成為一位經理人。只要你能找到其他的優勢來擴大你的影響,你的職涯將持續成長。在大多數大型公司裡,技術還是扮演一個重要的角色,例如,Google、Facebook、Amazon、MicroSoft 等公司,除了管理職位,它們都有一個明確定義的技術職涯軌跡以認知其它存在的槓桿點。仍然有許多工程師以攀爬這個階梯成為一位最重要的工程師而奮鬥。管理工作外的非傳統路徑需要更多的創造力,在管理工作外成功的工程師較少有可敘事的案例可以讓我們可以在後面追隨仿效。

所以不用成為一名經理人而且你的職涯還可以持續成長的祕密是什麼?

關鍵的發現是,當你的技術程式設計能力可以在穩定狀態( 譯註:也等於是沒有陡峭的成長狀態),你的技術貢獻影響力則不需要。用你的才能決定要將力氣花在什麼地方以將你的影響力最大化- 例如決定要寫什麼程式碼,建構什麼軟體,並解決其業務問題 – 這是沒有界限的。這個才能從其他人區隔出了最有價值和效能的工程師。

所以當一位軟體工程師要如何增長你的影響力而不用成為一位經理人?你可以識別並且解決商業的核心問題,或是你能夠讓你周圍的人更有效率地解決這些商業核心問題。你的技術努力與商業價值並行讓你的職涯得以成長。當你投入的時間可以直接轉換成有意義且可度量的結果,當你的努力直接移動公司成長和營收指標,你的僱主有了誘因給予你更多的資源和彈性,所以你可以更快速完成更大的成果 (注一)

這裡有一些基於我所知道的軟體工程師範例,如何讓你可以放大你的影響力且不用去擔任管理職位(並且在一家新創公司不用擔任共同創辦人,這個職位通常是做管理工作):

  • 建構可以讓你周圍的工程團隊產能倍增的工具和抽象層。例如,Jeff Dean,經由他對 Protocol Buffers,MapReduce,BigTable,Spanner和其它系統架構的貢獻,已經讓其他 Google 工程師超過一個重量等級的產出。這也是為什麼 Google 設定了 Google 高階研究員的技術標準,基本上是為了 Jeff Dean,不用感到太意外。
  • 在軟體或是其它工程團隊的實驗設計,開發具備足夠的專業能力可供諮詢,因為你的回饋意見有足夠的價值而少花了幾天或幾周的工作,或是將關鍵的專案從失敗轉向成功。
  • 你在一個深入的技術領域成為專家,而這些是一個成長中的公司所需要的資源。例如,你成為一位機械學習專家然後在 Facebook 的新聞投放排行( news feed ranking ),在 Google 的廣告排行,或是在 Airbnb 的搜尋排行等公司的相關部門上班。你投入的專案直接轉換成一家公司的成長與營收。
  • 你識別了一個關鍵的商業機會,也許是藉由與業務和商業團隊一起工作後看到這個機會,然後你成為公司內新創團隊中的一份子去協助他們的需求並將產品做出來。
  • 你建立了到職和輔導新進人員的流程,並教導和訓練其他的工程師,而且你讓他們在團隊中顯著地增加更多的價值。
  • 你在一個緊密的招聘流程中扮演一個關鍵的角色,並且你幫助招募工程師且將僱用工程師專案結案。
  • 你為你的公司建設工程品牌的付出有很顯著的貢獻。例如,如果「多樣性」是公司工程品牌強大的部分,在業界招聘人才時,你可以往「多樣性」的狀態前進。

這些都是如何增加你的影響力中的幾個少數範例,但是可能達到的路徑是沒有極限的。要注意的是這些路徑所沒有提到的-建置軟體為最後的目標- 更進一步說,它是幫助團隊和商業成功的方式。

專注在你所建立最大的價值。你的職涯成功了並且成長也會隨之而來。

文中註釋

  1. One corollary is that if you work on a team or a company that isn’t growing, it will be more difficult for you to grow your own career because the value that you can create is limited. If you’re working on a dying product that loses the company money, how much value could you possibly be adding? This is why Sheryl Sandberg argues in Lean In why it’s so important to hop onto rocket ships when evaluating job offers

關於這篇文章作者

edmondlau-headshot-1-w400-54af35b37dcef5c8646f247dcd0e9ed570e6ea506a7a00d19c3e1880d3b1485f

Edmond 目前教導軟體工程師和技術經理如何有效率的建立有意義的影響力。

他是 Quip 早期的軟體工程師,曾經在 Quora、Google和 Ooyala 帶領軟體開發團隊。

著作:The Effective Engineer

更多 Soft & Share 分享內容

相關文章