天天看點

程式員從技術到管理之路

技術之路藍圖

作為普通的技術開發工程師,大部分的職業之路可能就是下面的這樣的:

  1. 大學畢業之後作為初級研發工程師進入企業
  2. 經過三年的學習和曆練,逐漸開始作為項目負責人主導項目開發
  3. 再經過兩年的項目曆練,已經能夠獨立負責項目核心子產品開發,解決問題的能力得到大幅提升
  4. 再經過兩年的曆練,如果負責的項目進展順利,得到老闆賞識,可能會被扶正,授予項目技術經理頭銜,負責項目技術架構和攻關
  5. 再經過兩年,一直保持工作的熱情和幹勁,大機率能夠成為項目經理,總體負責項目進度,向部門經理彙報

好了,作為技術人,好好幹,經過大約10年(3+2+2+2=9年)之後,你超越了競争者,幸運地成為了經理,正式進入管理之路。

此時,假設22歲大學畢業,經過10年奮戰,你已經32歲。

從此之後,你可以撸代碼,也可以不撸代碼,取決于你自己。

從此之後,你可以一路上升,做到部門副總、部門總經理、公司總工、公司副總、公司總、集團總…

但這些,可能更要看運氣了。

筆者認為,在程式員工作的前十個年頭裡,很多事情是可以通過努力達到的,是以想分享一下自己的感受。

猥瑣發育(前三年)

此時剛剛從象牙塔步入企業,自己就是個小白,有的隻是一腔熱血和大把時間。

有人說過,“你不要去拿自己的劣勢跟别人的優勢比,你隻要盡力把自己的優勢放大,就能做得很好”。

同樣的,此時,你隻需要把自己所擁有的優勢發揮好就行了:

  • 一腔熱血:轉化為工作的熱情和動力,積極主動吸取新知識,了解所做事情的意義和價值
  • 大把時間:把主職工作做好的同時,修煉自己的内功,利用業餘時間把基礎技術知識和業務知識鞏固提升

就是這樣,前三年,你要明白,你現在應該是一個輸入的狀态,就是你要主動從周圍環境中汲取營養。

一是因為你剛來公司,公司、上司和周圍同僚對你的期望還不高,你可以靜下心來,有很好的機會和大量的時間去學習。

二來是因為你有很好的學習環境和氛圍:

  • 身邊的大部分人,都是技術比你好,業務比你精,經驗比你多,工作時限比你長,年齡比你大,都是你的老師
  • 他們大都比較和善,願意花時間給你指導和指引(因為是初來乍到嘛)

作為技術人,且以後要靠技術吃飯的人,你要給自己規劃兩條路:

  • 把自己的主職工作做好(主動把工作需要的技術知識和業務能力搞好,成為優秀員工)
  • 除工作外,把技術知識分散開來,努力在純技術這條路線上成為大牛(有了這個能力,以後你就可以不依賴公司,而是公司依賴你,跳槽也easy)

在猥瑣發育的這三年,是為之後10年,甚至是一生打技術基礎的時候,因為三年後,你可能就沒有這麼純粹學習時間和氛圍了。

嶄露頭角(第4-5年)

經過猥瑣發育,你的身邊也來了3批剛入職的年青人了。而你已經不再是新員工了。

随着你很好地完成了上司交給你的任務,甚至還主動承擔了一些老員工不願意幹的雜活累活,你在上司心中的形象還是很好的:

年輕、肯幹、有能力

于是,上司可能會開始讓你負責一些項目中的重要功能和核心子產品。

這時,你已經對技術有了一定的了解,對業務也有了一定的認識,可以在項目會議上提出一些自己的觀點和改進意見。

此時,你處于輸入+輸出雙重重要的狀态。

  • 輸入是說你還需要學習新的業務知識和别人的觀點,能夠保持謙虛心态
  • 輸出是說你有了一定的業務能力,對技術架構的優缺點也了然于胸,開始有了自己的想法和建議,可以提出來一塊讨論

如果保持這樣的狀态,我相信,隻要輸入的夠多,必然會有良好地輸出。

而随着輸出的品質越來越高,你的影響力也會越來越高,上司和同僚也會認為你是一個有想法、會獨立思想的人。

自然也願意把更重要的事情傳遞給你。

進入項目核心子產品組,就是上司對你能力信任的明證。

經過這1~2年的核心子產品開發,你對項目技術架構和業務流程的了解越來越深入,持續開發和修複bug都已經輕車熟路。

如果你定位解決問題的能力很強,經常幫助别人,成為消防隊的一員,那麼這種能力很快會讓你成為團隊的明星人物。

特别是線上問題,如果能夠早一刻解決,都能為公司産品赢得客戶和利潤,給部門老闆留下深刻的印象。

組團輸出(第6~7年)

ok,你已經在公司服務在5年,是個老員工了。

你通過自己的努力,讓自己的實力和業務能力得到了上司和同僚的認可。你可能已經成為上司心目中的小能手。

随着公司業務的發展和擴張,公司要增加新的子產品或者要對原來的産品架構進行優化調整,你的機會來了。

上司選中了你,要你負責新的功能子產品,從需求到傳遞。

你經過規劃,多次向老員工和上司取經、彙報和溝通,最終确定了項目周期,并組建了5個人的開發團隊,向上司表了決心。

這是你第一次獨立展翅飛翔。也是第一次嘗試從純技術向技術管理的轉型。

好在公司已經提供了一套成熟的項目管理工具,包括:

  • 線上文檔協同系統
  • 項目進度管理系統
  • 代碼版本管理系統
  • 技術文檔分享平台
  • 部門溝通協調平台
  • 項目溝通協調平台

以前都是别人讓你用,現在你要開始規劃如何用,才能讓團隊協作更高效,項目進展更順利。

你要在團隊中宣導并執行你的規劃(當然了,規劃是一個持續優化改進的過程)。

以前,你最擅長的是撸代碼,定位問題、解決問題,可能現在,你更需要的是溝通協調規劃和說服能力。

毋庸置疑,如果你的溝通協調和說服力很強的話,你可以至少省一半的力氣。

然而,就像你撸代碼、定位解決問題的能力一樣,這些能力也是需要鍛煉的,而留給你鍛煉的時間并不長。

是以,這時,你可能會面臨來自幾個方面的壓力:

  • 上司的壓力:你需要定期主動向上司彙報工作進度,提出可能的風險點,讓上司了解總體概況,做到心中有數
  • 團隊的壓力:你需要人盡其能,制定的規劃别人不認同、有人延誤了進度、團隊成員之間扯皮、團隊主動積極性不高等
  • 技術的壓力:出現了驚天大Bug,一周還沒有定位
  • 外部的壓力:項目組之間的溝通協調等

彙總一下,可能團隊的壓力和技術的壓力會是比較大的,技術的壓力你可能會有所準備,而來自團隊内部的壓力,你則經驗不多。

這也是大部分中層管理人員可能會面對的壓力:

  • 如何調動團隊的積極性,讓團隊中每位成員都像你一樣負責?
  • 如何發揮團隊成員的主觀能動性,讓每個人開心高興地做事情?
  • 如何保證每位成員按時完成計劃的任務?
  • 如何避免無效溝通,讓團隊協作效率更高?

其實,這些問題會永遠地存在于項目的各個角落,沒有統一的答案,不同的團隊必然使用不同的方法,進而達到一種微妙的平衡。

如果這種平衡堅持到了項目傳遞,那方法就是有效的。反之,就要繼續調整,繼續平衡,周而複始。

這是你最具挑戰性的一個階段,也是你在管理這條路線上成長最快的一個階段。

你仍然會處于一個輸入+輸出的階段,但這時的輸入和輸出的含義跟之前已經大相徑庭:

  • 輸入:你需要利用業餘時間,快速精準地學習項目管理、團隊管理的行之有效的方法,并經合團隊實際,提煉精華
  • 輸出:你要根據實際情況,實踐你剛剛學習到的理論,用于提升協作效率, 提高團隊土氣

這兩步會比較頻繁地進行,輸入、輸出、回報、總結、輸入…

最終達到團隊的平衡,而此時,你也漸漸地有了一套适合自己的團隊的管理方法。

對于上司和公司而言,你以及你所帶領的團隊是在輸出,為公司輸出有價值,能夠轉化為利潤的産品,而你的價值,也附屬其中。

此時,項目技術經理這個頭銜,你受之不愧。

這一部分就不再展開了,可能需要單獨寫一篇文章探讨了。

項目經理(第8~9年)

作為項目技術經理,你還有一些事情參與不多:

  • 跨項目協調
  • 跨部門協調

是以,你還不是項目經理,而隻是技術經理,因為你主要做的是項目中技術相關的東西,管理和協調溝通的事情還有很多。

而這些能力,才最終衡量你是否能夠獨挑大旗的能力素質。

正是這些軟素質,可能會成為技術人員最難跨過的坎,需要不斷地打開自我,總結、反思、改進、總結…

這些内容筆者也有很多欠缺和不足,心得和感受也不多,說多了誤人子弟就不好了。

總結

就像遊戲中一樣,每個角色,如果充分發揮出它的技能和特長,都能成為獨擋一面的英雄。

現實生活中也是一樣。

隻是有些人快一些,有些人慢一些,隻要方向正确,堅定地走下去,必然到達終點。

你既可以成為技術領域中行業專家,也可以成為技術管理中的佼佼者。

以上文字僅是筆者根據自己在某國企中的經驗整理而成,純屬個人感受,僅供參考。

繼續閱讀