⑴ 工程師如何從技術轉型做管理
「我,程序員,32歲,距離退休,只剩3年了!」
這句話用來形容2019年互聯網行業最適合不過了。從18年開始,大大小小的互聯網公司開始了不止一輪的裁員,19年網上開始充斥一類文章,專門寫互聯網公司超過35歲的人,如果到這個年齡,還不是leader,業務又不核心,那麼請焦慮吧。
昨天聽羅胖的跨年演講,主題是:基本盤。意思是不要受到人雲亦雲的情緒影響,而是轉過頭,看手中的資源,基於基本盤看清自己的努力方向,非常感慨和受啟發。中國互聯網經過過去十多年野蠻式的發展似乎這2年開始慢下來了,程序員35歲的退休年齡雖然只是販賣焦慮的一種說法,但是整個行業對人的要求越來越高是不爭的事實,要求我們的成長速度必須跟上。2020年開始,希望自己在技術、管理、業務3個維度再做更深層次的學習,體系化個人的認知,做一個有特點的IT人。
下面要寫的主題是關於『工程師如何從技術轉型做管理』,這是我在團隊管理上第一篇系統性的總結。之所以選擇這個主題,一方面,個人覺得轉型做管理是當前環境下大部分程序員會選擇的職業路徑,另一方面,自己親身經歷了比較漫長的轉型過程,應該能寫出點心得體會。希望下面的內容對於『正在轉型掙扎期』或者『後續有規劃往管理轉型』的同學,讓你們有所啟發,內容大概分成以下4個部分:
1、什麼樣的工程師會被提拔做管理?
一般來說,滿足這3個條件的工程師會被提拔做管理:技術能力強、業務熟練、軟性素質達標。(當然還要看公司是否有管理崗位的空缺以及你個人的意願),下面分別展開說下重點。
技術方面:常用技術的深度和寬度缺一不可,架構能力非常關鍵。否則技術方向都把握不好,技術決策也容易出問題。如果技術能力沒達到一定水平,不建議太早轉管理(個人感覺能力至少要接近阿里的P7,騰訊的T3-1,網路的T6)。
業務方面:不了解業務,技術沒法落地,不僅要求熟悉業務而且應該具備比較強的業務意識,(如果能從技術維度提出好想法,幫助業務拿到更好的結果,這種leader是非常受歡迎的)。
軟性素質達標:軟性素質這個詞有些泛,我個人覺得最核心的兩點,溝通協調能力和做事靠不靠譜。軟性都是可以鍛煉的,但是一定要有意識去提升。著名管理學家陳春花老師說,「一個人被組織提拔,其實不是因為能力,而是因為信任」,聰明的人很多,但是靠譜的人很少,比能力更重要的是工作的投入感和靠譜的態度。
如果你覺得上述3個方面都達到要求了,我覺得只是差一個機會,否則好好提升自己吧。
2、你選擇做管理的初衷是什麼?
之前有人問過我一個問題,「你覺得我適合做管理嗎?能給我些建議嗎?」,我當時沒有正面回答他,而是反過來問他,「你能先告訴我,做管理對你意味著什麼?它能給你帶來什麼呢?」。當然我不是在質疑他,而是想讓他反思他做管理的初衷。我覺得『最原始的動機』會決定你在管理路上能扛多大的壓力以及能走多遠。關於初衷,我見過最普遍的說法有這么幾種:
上面這幾類都屬於『外部因素』驅動,說實話,都很難在管理路上走得很遠。因為技術管理是極其復雜和瑣碎的工作,它遠沒有你想像中的輕松和風光,而在這些外力下,你做出決策後的結果很多時候跟你的預期是不一致的,這個時候你的怨氣和轉型痛苦就會出現,你開始質疑你選擇的這條路是不是錯了?
再來看另外一個問題,作為技術管理者,對於公司、團隊以及你個人,你覺得它的價值分別是什麼?我個人的解讀是這樣的:
這是對於技術管理崗位的基本認知,你的初衷必須建立在這個認知基礎之上。然後試問你自己:是否認可這個崗位的價值?如果你覺得全是犧牲自己來成就公司和團隊,那你不可能做得開心,也不可能做好。
第2個問題,你是否對管理者的工作充滿熱情?並且享受這個過程呢?比如項目協調,比如制定流程並推動落地執行,比如招聘。如果你說我只喜歡做技術相關的工作(比如架構設計、技術評審等),那麼你還是走技術路線吧。
認可技術管理崗位的價值所在,並且能激發你的投入意願。這些就是底層最好的動力,你的成長和回報都是付出後水到渠成的東西。所以這個初衷很重要,三觀一定要正。
3、轉型期你會遇到哪些困惑或者挑戰?
轉型期會經歷心態、工作方式的轉變,很多事情會刷新你的認知。下面幾點,我認為是絕大部分人在轉型過程中會遇到的困惑或者挑戰:
上述疑惑是我個人轉型過程中體會最深的幾點,我在後文中會分別給出自己的看法和建議。
4、轉型期應該具備哪些心智?
從技術轉型做管理,更多的不是能力的變化,而是思維方式和行為的改變。很多剛轉型的leader管理做不好,絕大部分不是因為能力不行,而是出現在了認知上。以下幾點,我認為是轉型期leader一定要具備的心智:
學會從團隊角度考慮問題
以前作為工程師,更多是從事情本身或者從個人角度出發,成為leader後,轉變成團隊思維是最最重要的,因為你的KPI取決於你整個團隊的完成情況,你要權衡的是團隊整體的利益和效能。
上面4項對比,是我個人認為比較典型的case,比如上一節提到的一種情況:leader覺得某個問題很簡單,嫌員工處理效率低,然後自己跳出來三下五除二給解決了,這種就屬於很典型的員工思維。單從搞定這件事情來看,這也許是很好的處理方式,業務方也會很滿意,但是帶團隊是長遠的事情,上述做法緊急情況可行,但是變成常態就是非常大的問題。
團隊能力不提高,leader永遠不會解放,這是作為leader應該具備的意識。如果通過這個問題能夠提升組員某方面的能力,leader應該扮演好教練的角色,放手讓組員自己去做,你要做的僅僅是觀察、給一些指點、適當給予時間上的支持。這次處理也許效率不高,但是下次碰到類似的問題,團隊是不需要依靠你來解決的,另外組員也有自己的發揮空間,覺得團隊在幫助他成長。
注重執行細節
對於剛轉型做管理的一線leader,切忌被放權式的管理方式洗腦。放權式管理對於對管理者的經驗要求很高,它比較適用於工作流程清晰,團隊骨幹目標認知以及自驅力很強的團隊。
當你個人的管理水平還處於菜鳥期時,一定要從細節抓起,通過手把手帶員工,教會他們如何正確的做事,怎麼才能達到你的要求,以及如何培養出團隊骨幹,搭建出團隊的核心組織架構,所有這些都經歷過了,你在管理上才會有自己的心得體會,才會走得更扎實。
通過觀察執行細節,你能非常清楚團隊每個人的優劣勢,深入感受自己的管理方式是否存在問題,然後再輔以leader思維去思考和解決問題,管理上才能真正獲得成長。這個過程,你可能會收到上級、平級、下級的很多反饋,清楚細節後其實你就有了自己的判斷,知道是否是自身的問題,是否要調整,而不是沮喪抓瞎。
學會用人所長,具備包容心
知人善任、人盡其才,是每個管理者都懂的道理,但是能做到的不多。尤其在技術管理崗上,我見過有些leader在技術上非常強勢,技術權威不容有任何挑戰,當組員提出更合理的技術方案時,他會用職級強制要求按自己說的執行,根本不做任何解釋。
對於新晉leader,團隊對你的信任感還在磨合期,上述做法很容易打擊組員的積極性,消滅他們的創造力,這對你帶團隊來說是非常致命的。如果組員的方案更合理,leader應該倍感欣慰,包容並鼓勵這種行為,因為組員某方面的專業能力超過你了,你不再是團隊各方面最強的人,你需要做的是調整自己的心智,學會用人所長。另外,還有一種情況是:組員和leader的技術方案都可行,我個人傾向將選擇權交給組員,畢竟他們是真正的執行者,應該給他們自由發揮的空間,最後就算出問題對他們來說也是很好的經驗積累。
重視情商,做好自我情緒控制
管理上能做多大事情,真的和情商有非常大的關系。IT界的技術人員由於工作性質的原因,普遍注重技術上的提升,而忽略情商的培養和維護,作為新晉leader必須從一開始就意識到情商的重要性。管理是一個復合型的崗位,當你的專業技能和處理問題的方法論已經形成後,越往上發展,為人處事的軟技能佔比會越來越重。
每天和不同的人打交道,這個是管理者的日常工作,因為你需要調動所有可能的資源去解決團隊的困難。面對不同職位、不同level、不同性格的人,你要反復琢磨採取何種溝通方式和溝通技巧。上一節提到一種情況:一件你認為很簡單的事情,推動起來卻很困難。可能是因為你對外的溝通方式太生硬,別人不想配合你,或者別人確實有其他更重要的事情,但是如果私下關系建立好,你再當面軟磨硬泡,多半也是可以解決的。人際關繫上,難免會有碰壁的時候,不要氣餒,這跟技術同學寫出1個bug一樣,是家常便飯的事情,但是一定要注意積累經驗。線下和關鍵的配合方維護好私人關系,多吃飯喝酒,別人有困難能及時伸出援手等等,套路有很多。
情緒控制,是一個比較難的事情。情緒很容易傳遞,如果leader碰到不爽的事情,把組員當做出氣筒,這是非常傷士氣的,之前建立的信任感很容易消失,受不了的組員也可能就離職了。另外,對外溝通上,如果leader控制不好情緒,不將重點放在解決問題上,只是抱怨或者發火,也非常容易引起配合方的不滿,認為你不專業,久而久之,你的團隊也會被打上這種標簽。
個人在情商方面目前做得也很差,踩過很多坑。提供3點建議:
做好時間管理
時間管理的4象限理論可以網路一下。重點說下我個人遇到時間管理問題是怎麼解決的,以及技術和管理兩個維度如何分配時間。
第1步,可以拿過去一周或者一個月的時間跨度為例,詳細列一下你的時間花在哪些具體事情上了,以及每類事情大概的時間佔比。對於技術leader可能的事情包括:需求評審,資源規劃和項目排期,技術評審,團隊周例會,研發規范制定和落地,項目管理,技術調研,架構設計,coding,緊急任務協調和處理,業務以及新技術充電等等。
第2步,針對第一步列舉的每類事情,考慮下哪些是非必須的,哪些是可以授權給團隊骨幹去做的,哪些是可以優化提高效率的。比如一些簡單的需求評審或者技術方案評審讓骨幹把關即可,項目管理制定好流程規范同時培養一些scrum master或者項目經理下放給他們來做。不用凡事都事必躬親,leader應該把時間聚焦在對團隊最關鍵的事情上,學會授權和放權。
對於一線leader,技術和管理兩個維度如何分配時間,個人的建議是:
上面這些內容,就是關於工程師轉型管理的個人心得。
⑵ java程序員轉向管理
1.積累一定的項目經驗。
2.適合做管理工作(看個人,首先你的性格是否何時管理別人;其次你的能力是否到達了管理別人;最後是溝通協調能力)
3.機遇(遇到一個大項目,或者正好有項目無人管理,或者項目經理離職等)
關於證書方面,感覺都是浮雲,有證書也未必能管好項目,當然證書可以作為一個敲門磚,讓老闆給你機會。
4.跳槽,換一個新的公司,找一個管理崗位。通常一個公司等機會不如自己找機會,只要你覺得自己已經准備好了。
⑶ 程序員做多久可以轉到管理層工資多少
與時間關系不大,而與你在職涯上的進程對應。
路徑分兩種:
程序員——》軟體工程師——》高級軟體工程師——》開發(技術)主管——》開發(技術)經理——》開發(技術)總監。這一路徑比較長,每一環最少也得兩年才可以進階下一環。
程序員——》軟體工程師——》管理型主管——》技術管理經理——技術管理總監。這一路徑稍微容易些,但要求在專業技能之外,有管理知識和管理思維以及對應方法。同樣,每一環最少也要兩年。