如果你不想走管理路線,程式設計師職涯要如何成長?
在你的一生中,持續待在軟體工程師這個職位是一個好的職涯選擇嗎?或是你必須轉換到管理職位以繼續攀登工程生涯的階梯?這就是最近在 Quora 上工程師想知道的事,並且這是一個重要的且值得解決的問題。特別是那些對於管理群眾不會感到興奮的人。
好訊息是持續擔任軟體工程師的職位並且不用選擇管理這個職位是一個很好的職涯選擇。然而如果你想穿透所謂透明天花板的話,不要指望單憑多年的技術經驗攀登職涯階梯。以下是一個粗略的模型公式,你的職涯成就與你所創造的價值成正比。
在 Google 這樣的公司,擁有超過 10 年以上經驗的工程師經常會問為什麼他們在職涯階梯仍然只是一名資深軟體工程師?在他/她們早些年工作職位晉升上似乎很快是發生什麼事?為什麼他們有些同儕會獲得提拔?
這些工程師特別是那些不選擇管理職位的工程師所犯的其中一個最大的錯誤-認為技術能力加上經驗等同增加影響力。他們守住一個信念,如果他們持續做好工作,他們最後將會得到職位晉升的獎賞。這種心智模式是有缺陷的,原因有二 【Java高階架構進階群】:855801563本群提供免費的學習指導,架構資料以及免費的解答,不懂得問題都可以在本群提出來,之後還會有職業生涯規劃以及面試指導;進群修改群備註:開發年限-地區-經驗,方便架構師解答問題
第一,你寫程式和建構軟體的技術能力隨著時間維持在平穩狀態(譯註 :也等於是沒有陡峭的成長狀態)。當你第一次剛開始工作的時候,你經常會犯了技術上的錯誤。每一個小專案都具有學習機會以砥礪你的程式設計技能。隨著時間進展,你在程式設計和軟體設計上更加熟練並且很少犯錯。所以你的早期職涯階梯晉升是你早期技術學習反映的結果。過了 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 的搜尋排行等公司的相關部門上班。你投入的專案直接轉換成一家公司的成長與營收。
你識別了一個關鍵的商業機會,也許是藉由與業務和商業團隊一起工作後看到這個機會,然後你成為公司內新創團隊中的一份子去協助他們的需求並將產品做出來。
你建立了到職和輔導新進人員的流程,並教導和訓練其他的工程師,而且你讓他們在團隊中顯著地增加更多的價值。
你在一個緊密的招聘流程中扮演一個關鍵的角色,並且你幫助招募工程師且將僱用工程師專案結案。
你為你的公司建設工程品牌的付出有很顯著的貢獻。例如,如果「多樣性」是公司工程品牌強大的部分,在業界招聘人才時,你可以往「多樣性」的狀態前進。
這些都是如何增加你的影響力中的幾個少數範例,但是可能達到的路徑是沒有極限的。要注意的是這些路徑所沒有提到的-建置軟體為最後的目標- 更進一步說,它是幫助團隊和商業成功的方式。
專注在你所建立最大的價值。你的職涯成功了並且成長也會隨之而來。
感興趣可以加Java架構師群獲取Java工程化、高效能及分散式、高效能、深入淺出。高架構。效能調優、Spring,MyBatis,Netty原始碼分析和大資料等多個知識點高階進階乾貨的直播免費學習許可權 都是大牛帶飛 讓你少走很多的彎路的 群..號是:855801563 對了 小白勿進 最好是有開發經驗
注:加群要求
1、具有工作經驗的,面對目前流行的技術不知從何下手,需要突破技術瓶頸的可以加。
2、在公司待久了,過得很安逸,但跳槽時面試碰壁。需要在短時間內進修、跳槽拿高薪的可以加。
3、如果沒有工作經驗,但基礎非常紮實,對java工作機制,常用設計思想,常用java開發框架掌握熟練的,可以加。
4、覺得自己很牛B,一般需求都能搞定。但是所學的知識點沒有系統化,很難在技術領域繼續突破的可以加。
5.阿里Java高階大牛直播講解知識點,分享知識,多年工作經驗的梳理和總結,帶著大家全面、科學地建立自己的技術體系和技術認知!