碼農晉升為技術管理者後,痛並快樂著的糾結內心

Java和Android架構發表於2019-03-04

熱文導讀|  點選標題閱讀

厲害了,2019-2020中國網際網路趨勢報告

真實靠譜:百度的職級、T系列、薪資、及晉升潛規則

一名Android程式設計師的BAT面經和感想

640?wx_fmt=jpeg

有一個非常有趣的現象:據說大部分的技術管理者,在其從程式設計師轉為管理崗位的時候,都是在領導或公司的要求下,被動的推到管理崗位上的,並非是自己當初有強烈意願、主動去選擇管理崗的。這種被動的比例還不低,高達80%以上。

這個現象從我自己身邊的同事中也可以感受到,最近兩年我接觸到的四五位新晉的技術管理者,全是因為技術/專案做得好,被上級提拔到管理崗的,幾乎沒有人是因為具備了管理技能後主動去選擇的。其實包括曾經的我自己也是這樣走過來的。

這裡,我們不討論這種普遍現象是否合理,我們先來看看這種晉升方式會帶來什麼樣的結果。

既然有這麼多人是「被動」的成為技術管理者的,那可以想象,在這些人剛步入管理崗位的時候,對管理知識的瞭解會是多麼的薄弱,對即將要開展的管理工作會多麼的心虛和糾結。甚至有些人,因為剛開始進行管理工作的不順利,導致對自己能力的質疑,對技術管理崗位的排斥。

所以這也說明了很多程式設計師剛晉升為管理後,內心其實是痛並快樂著的。針對這個現象,那應該怎麼辦呢?

這裡,我就以「過來人」的工作經驗,結合近期讀到的「劉建國老師」的一些的管理理念,計劃從一名新晉的技術管理者角度出發,來聊一聊我們應該怎麼走好初入管理崗的這段路,希望能給管理新人們一些啟發。

一、我適不適合去做一名技術管理者呢?

很多初入管理崗的同學,可能會有這樣一些內心的糾結:

「我沒有做過管理,不知道自己能不能做得好?有點膽怯」

「是公司領導安排我做技術管理的,我也不知道自己適不適合?更不知道對自己職業是好還是壞?有點焦慮」

「晉升管理崗會給我帶來工資福利和職位的提高,這是我很想要的。但我不知道管理這條路自己是否真的喜歡?有點迷茫」

……

其實對於一名新晉管理者,或者想要步入管理崗的同學來說,有這些糾結和不安也是正常現象。要解決這些問題,首先你得問問自己的內心:

你為什麼要去做一名技術管理者,你對管理工作所需的 投入要求/意願 以及 帶來的回報 都清楚了嗎?

  • 對管理工作的投入要求/意願:

  1. 認可管理工作的價值

我們都知道,在日常的管理中會有很多的「繁瑣的」「協調性」「打雜的」的工作需要做。例如:協調資源、跟進專案、管理進度、員工面談、績效考評、開會溝通、郵件彙報、研發流程、關注專案和人員問題等等。這些工作在有的人看來就是打雜,覺得很沒有價值,沒有寫牛逼的程式碼來得高大上。而在有的人眼中卻非常認可這些工作,覺得能給自己帶來多方位的素質提升。

那麼,在你眼中,你是怎麼看待這些工作的呢?

  1. 對管理工作發自內心的興趣

很多管理工作並非一定要你到達管理崗位後才能做的。在你還是一名普通程式設計師的時候,在你還是團隊技術骨幹的時候,如果你真的對技術管理有興趣,那麼這些「管理」工作已經在你的日常工作中無形的開始了。例如:關注專案整體進度、瞭解專案目標、推進專案流程、關心身邊的同事成長、優化研發與協作方式等等。

那麼,你是否發自內心的對這些無形中的「管理」工作感興趣呢?

  1. 願意去提升管理能力

一旦從純粹的技術崗轉到管理崗,你可能需要面臨很多管理技巧上的挑戰,甚至還有很多在思維和認知上的顛覆。例如:首先,管理工作已經不再像敲程式碼一樣非0即1了,管理工作中有很多中間態,不確定的因素,這些往往是對程式設計師之前習慣性思維的一個很大的衝擊。其次,之前敲程式碼是與計算機打交道,轉為管理之後,會花更多的時間與人打交道,與上司、與平級、與下屬、與跨部門協作等等。另外,管理者會承擔更多更大的責任,需帶領團隊穿山越嶺實現公司的最終目標,這些壓力也是作為程式設計師時候所沒有的。

你願意為此方向重構自己,提升自己的管理思維和能力嗎?你做好這個準備好嗎?

  • 管理工作帶來的回報:

  1. 你擁有了一個團隊

步入管理崗之後,你就不是一個人在戰鬥,你擁有了一個團隊,基於團隊,你可以做出更大的成就。以前你的成績可能就是技術做的好,程式碼寫的好,而轉入管理開始帶團隊之後,你可以和團隊一起搞定更復雜的任務,做出更大的成績。

  1. 能力、視野、影響力 都會得到顯著提升

除了技術能力,你還獲得了管理能力、領導力,你看待問題的視角不再是程式設計師思維了,會有更高的視野。由於團隊間的協作,你還能獲得更大的個人影響力。

  1. 物質的回報

這是非常現實的,看得見摸得著的回報。

好了,上面已經將一名技術管理者所需的要求和回報都簡單捋了捋。作為程式設計師的你,可以對照一下,然後問問內心的自己是否真的合適。

如果你覺得沒有問題,那我們們就繼續來看看,一般有那些機會可以幫助我們成長為技術管理者。

二、有哪些機會能使我成為一名技術管理者?

首先,「管理比技術更需要機會」,我們做程式設計師的,都非常勤奮,挑燈熬夜的幹活學習都是平常事,而且技術這東西也確實很公平,你不斷的努力去研究去學習,遲早會提高一個層次,無非是不同人不同時間的問題。但是做管理呢,並不是這樣。要想成為一名技術管理者,勤奮必不可少,然而其中的機會也很重要。

在職場上,經常有遇到這樣的現象:

「你的能力非常不錯了,可是團隊中沒有管理的空缺了」

「你是團隊中技術最好的一個,可是管理崗的卻安排給了別人」

……

其實可以發現,這裡面除了你個人的條件以外,外部的「機會」因素相當重要。

想成為技術管理者,那我們應該抓住那些潛在的機會呢?

  1. 快速發展的公司最有機會,這類公司經常會建立新的專案新的團隊,需要很多技術管理者

  2. 耐心積攢能力,掌握核心技術的人會更有機會,厚積薄發的道理人人都懂

  3. 手上負責的專案屬於基礎性、全域性性、跨部門協作工作多的業務相對來說機會會多一些

  4. 在平時的工作中,經常得到上級認可、甚至上級能支援你轉管理,這類人等待的就是以一個契機

  5. 身邊有管理能力較好的導師朋友來解惑幫助的人也會更容易把握機會

最後就是,當你還不是管理崗,但你卻已經在團隊中做著技術管理者應該做的事情的時候,你最有機會。

在網際網路公司中,很多管理崗的晉升不是給予的,更多是對既定事實的追認。

三、技術和管理應該怎麼去平衡?

從一名程式設計師晉級為技術管理者之後,很多人的內心多多少少都存在這樣一些顧慮:

「每天管理的工作越來越多,留給自己研究技術的時間卻越來越少,時間一長,我會不會慢慢脫離技術了」

「寫程式碼的時間變少了,對很多技術細節也沒有以前敏感了,感覺自己離技術老本行越來越遠,內心越來越發虛」

「脫離了一線編碼,心裡空落落的,很擔心自己的職業發展」

……

其實有這些顧慮也無妨,這也是大多數新晉技術管理者都會遇到的問題。

但是,我們來想想,為什麼這些問題在新管理者面前這麼普遍呢?

主要原因還是因為新晉的技術管理者大多都是程式設計師出身,一直以來都是靠一線的編碼技術能力去打江山混名聲的。突然之間轉為管理了,既擔心把「技術」丟了沒了退路,又對「管理」應該要做哪些事情、如何把「管理」做好,如何重新依靠「管理」這項能力去打江山混江湖還不熟練,正處於青黃不接的時期,自然而然就會覺得焦慮不安了。

那這些顧慮有解嗎?有的。

  1. 要明白「放棄編碼,不代表放棄技術」

轉做技術管理之後,我們只是減少了編碼的時間,並不是放棄了技術,事實上,作為一名技術人,我們永遠永遠也不能放棄技術。

但也千萬不要把「編碼能力」與「技術能力」之間劃上等號。技術能力是可以更多的關注應用,但並不一定需要時時關注實現細節。

就像部隊打仗一樣,作戰指揮官需要了解陸軍、空軍、海軍等不同軍種的優劣勢,需要了解軍艦、坦克、導彈等不同作戰武器的最佳特性,才能部署出最佳的作戰方針,統籌全域性打勝仗,但是他並不需要了解軍艦具體怎麼開、坦克具體怎麼駕駛。

另外,當你還是一名程式設計師的時候,編碼可能就是你的全部實現,而當你成為一名技術管理者的時候,技術就應該是你的工具,你應該站在更高的視野去看待技術的價值,技術是為最終的目標而服務。

  1. 要保持對技術的評估能力

上面提到了「技術能力」並不等於「編碼能力」,拋開一些非核心能力的話,可以簡單點理解為「技術能力」=「編碼能力」+「技術評估能力」。當我們還是程式設計師的時候編碼能力是我們最為注重的,但當我們轉技術管理之後,技術評估能力就應該成為我們的重點,編碼能力在精力有限的情況下是可以放棄的。

技術評估能力主要是指我們通過自己的技術認知,去評估一個專案/開發任務 要不要做、值不得值得做、做到什麼程度,技術方案邊界在哪兒、技術選型用什麼、可用性/擴充性方案是什麼等等,甚至是對團隊人員技術水平的邊界評估。

怎樣才能保持技術評估能力,以及怎樣能不斷增長自己的技術評估水平呢?作為技術管理者而言,很明顯,已經不能通過大量編碼的方式去提高技術能力了,只能依賴於:自己以往技術經驗的積累、團隊的技術分享、技術調研、與同行專家交流、培訓學習等方式。這些方式有的時候會比編碼的方式更快更有效率。

  1. 技術管理是多樣性的,你總會找到一條你自己的路

我們要明白,技術管理並沒有固定的模式,有的技術老大做著做著就往商業方向靠了,比如雷軍這類。有的技術老大無論做到多高的級別,帶幾百上千人的團隊,卻依舊非常關注技術日常。每個人的技術管理風格不同,但最後都會找到一條自己風格的管理之路。

即使最後你發現自己不喜歡做管理了,想轉回做技術架構師或創業,你通過管理獲得這些經驗能力和視野,對你的其它道路依舊會有莫大的幫助。

  1. 技術管理能力是每一個程式設計師都需要的技能

技術管理是一項能力,並不是一個職業。它是每一個技術同學在成長過程中,都應該去學習和具備的能力。無論你以後是走管理道路,還是做職業經理人、技術專家、架構師、創業,你都需要具備技術管理者應具備的團隊管理能力、技術視野、技術規劃能力、專案管理能力、溝通協調能力。

因此,你還需要有顧慮嗎?反正無論如何你都得會一點嘛。

以上,就是對新晉的技術管理者如何解決初入管理崗時糾結心路的學習與分享,希望能給新步入管理崗的同學們一些啟發。

本文釋出於微信公眾號「 不止思考 」,歡迎關注,交流Java、Web、架構、大資料、職業發展、技術管理。  

看完本文有收穫?請分享給更多人

喜歡就點「好看」唄~

相關文章