程序員老司機:如何讓技術(shù)團隊的戰(zhàn)斗力提高300%?
對于公司尤其是技術(shù)型公司來說,人才是公司最根本的競爭力元素,因此,如何管理團隊,將團隊打造成有戰(zhàn)斗力的單元,就是各個管理者不得不面對的問題。
管理就是帶人,帶人心。本文通過介紹如何提升領(lǐng)導(dǎo)力、如何通過建立合理的職級體系和績效評價體系、如何進行人才盤點以及如何構(gòu)建團隊文化幾個方面,闡述如何成為合格的團隊領(lǐng)導(dǎo)者,如何提升團隊的戰(zhàn)斗力。
技術(shù)管理的本質(zhì)
從 3 年前離開亞馬遜到現(xiàn)在,我也在不同的公司混了一圈,雖然本人自詡為程序員老司機,但是由于工作的需要,從 2014 年開始從事管理工作,雖然之前也帶團隊,但是一直不是管理的 title。
做管理兩年來,我有很多的心得和體會,我經(jīng)常反思之前作為團隊成員的一些想法和做法。我發(fā)現(xiàn)管理是一門很深的學(xué)問,以前沒做管理,不太理解的一些事情,現(xiàn)在也能慢慢理解了。
國內(nèi)大多數(shù)公司的中層乃至高層的技術(shù)管理,一般都是技術(shù)出身,基本是程序?qū)懙暮镁腿F隊,但是,想想管理的本質(zhì)是什么?
個人愚見:管理就是管人,帶人就是帶人心。右軍大神曾經(jīng)有一篇談?wù)撥浖|(zhì)量的文章,提到一個理念:“團隊的 Leader 不重視質(zhì)量,你的團隊就不會重視質(zhì)量”,這個道理也適用于管理團隊。
“你希望你的團隊是什么樣子,你的團隊就是什么樣子”,正所謂“兵慫慫一個,將慫慫一窩”。
那么,大家可能就會問了,我當(dāng)然希望我的團隊是富有戰(zhàn)斗力的強大的團隊,你說的這些我也都懂,但是到底應(yīng)該如何做呢?
成為合格的團隊領(lǐng)導(dǎo)者
如何管理團隊?我主要想談一談一些軟技能方面,如何成為一個合格的團隊管理者,主要有以下幾個方面需要注意。
成為聚焦答案的管理者
作為團隊的 Leader,首先要學(xué)會傾聽,努力創(chuàng)造與團隊成員溝通的寬松環(huán)境。
遇到問題,要就事論事,不要糾結(jié)后者苛責(zé)問題是如何開始和進一步發(fā)展的(這個不是說不要關(guān)心問題的產(chǎn)生原因,而是可以通過解決問題之后的復(fù)盤,找到問題發(fā)生的根本原因,形成改進項),盡量要采用“聚焦答案”的方法,關(guān)注問題是如何被解決的。
也就是說更多地專注于如何找到解決問題的方案,可以通過提問的方式幫助員工找到問題的答案,而不是直接告訴他們怎么做。
另外,作為團隊的領(lǐng)導(dǎo)者,需要轉(zhuǎn)變思路,從命令的發(fā)出者轉(zhuǎn)化為團隊的服務(wù)者,團隊領(lǐng)導(dǎo)者的任務(wù)是幫助員工找到解決問題的方案并且利用自己的資源優(yōu)勢幫助團隊成功。
要對團隊成員進行關(guān)懷,通過 1:1 talk 等方式與團隊成員建立良好的溝通渠道和反饋渠道,了解他們的訴求、困惑甚至抱怨,找到幫助他們的方法。
例如,可以每天用 10 分鐘時間,跟從未向你求助或者反饋過問題的人進行溝通。
幫助團隊成員提升領(lǐng)導(dǎo)力
我們在帶團隊尤其是技術(shù)團隊的過程中,都會遇到各種各樣的問題,比如說缺乏組織,缺少溝通,角色和職責(zé)劃分不明確等等。
也有些人會抱怨說團隊里面沒有一流的人才,沒有能獨擋一面的人。但是,我認為這都不是團隊效率低下的根本原因,與其他原因比較,最大的原因是團隊缺少正能量,缺少領(lǐng)導(dǎo)力。
那么我們來看看什么是領(lǐng)導(dǎo)力:
- 責(zé)任感、主人翁意識
- 執(zhí)行力、崇尚行動
- 創(chuàng)新力、化繁為簡
- 勤回顧、自我批評
- 多付出、贏得信任
- 肯鉆研、刨根問底
- 重交付、達成業(yè)績
- 有氣量、選賢育能
下面,我們就這幾個方面來做一一的解讀:
責(zé)任感、主人翁意識
所謂主人翁意識,就是他們會從長遠考慮,不會為了短期業(yè)績而犧牲長期價值,他們不僅僅代表自己的團隊,而是代表整個公司行事,他們從不說“那不是我的工作”。
他們往往以一腔熱忱維護自己的主張,為他們認為有益于業(yè)務(wù)發(fā)展的理念而努力。公司的成功需要領(lǐng)導(dǎo)者長期傾注大量心血,是他們責(zé)無旁貸的利益所在。
有些人可能會說,我非常符合上面所描述的情形,我做事親力親為事無巨細,我為團隊和公司嘔心瀝血,但是,團隊還是沒有起色,大家好像都無所事事,或者小心翼翼。
這是對主人翁意識的過度運用,他們在工作中投入了大量的心血,以至于剝奪了他人的發(fā)展機會,事無巨細,一管到底,往往會在團隊合作的過程中起到相反的作用。
而沒有責(zé)任心和主人翁意識的人,對有些事,“事不關(guān)己,高高掛起”。完全就是上班掙錢;如果看到有任務(wù)需要完成或者有不足之處可以改進,他們就想當(dāng)然地認為會有其他人來管。
因此,團隊管理就是要努力地培養(yǎng)大家的責(zé)任感,主人翁意識,想做到這一點,就需要增強團隊成員的參與感,讓他們知曉并理解所做事情的價值、來龍去脈,不斷地強化使命感。具體的做法有以下幾點:
構(gòu)建全棧小團隊
現(xiàn)在很多公司和團隊強調(diào)全棧工程師,這固然好,但是對于初創(chuàng)團隊或者說非知名的公司,這一點很難做到。
公司的背景和經(jīng)濟能力都不足以支撐招聘全棧工程師的成本,大家對全棧工程師的理解不同,這里不做糾結(jié),因為筆者曾經(jīng)服務(wù)于亞馬遜,因此心中的全棧工程師還是非常牛 X 的。
這就需要我們退而求其次,沒有全棧工程師,就打造全棧團隊,進而努力培養(yǎng)自己團隊的全棧工程師。
根據(jù)“康威定律”,軟件架構(gòu)是由組織的架構(gòu)決定的,因此按照貝索斯“two-pizza”團隊的理論和敏捷方法,構(gòu)建小的團隊,可以有效減少溝通成本,有利于團隊的自治。
我們通過讓一個小的團隊有比較全面的建制,Leader(往往是團隊的架構(gòu)師,熟悉業(yè)務(wù)和技術(shù))+ 前端工程師 + 后端工程師,往往可以能夠比較獨立地承接一個或者幾個業(yè)務(wù) silo 的工作。
這樣團隊成員整體負責(zé)一個或者幾個業(yè)務(wù)模塊,可以極大地提高團隊成員的參與感、使命感和責(zé)任感,團隊成員相互幫助,高度自治,形成一個具有共同利益的小團體。
大家要么一起成功,要么一起失敗,正如下圖所示,我們團隊的劃分,是按照業(yè)務(wù)線劃分的:
當(dāng)然,隨著業(yè)務(wù)的復(fù)雜度的增加,可以按照業(yè)務(wù)/子業(yè)務(wù)線的方式來劃分團隊,我們并不是絕對的扁平化,而是嚴格遵循 two-pizza 原則。
業(yè)務(wù)的匯總一般發(fā)生在 VP,有時會在 Director 級別,業(yè)務(wù)線的劃分常常按業(yè)務(wù)細分,技術(shù)團隊要負責(zé)支持全部業(yè)務(wù)線。
因此技術(shù)團隊的劃分通常按系統(tǒng)或者是業(yè)務(wù),Two pizza 團隊的原則在組織層級的任何部分都適用,當(dāng)人數(shù)過多時,必須繼續(xù)拆分。
崇尚行動,執(zhí)行力
執(zhí)行力和行動力是一個團隊是否能夠獲得成功的必要條件。因此必須在團隊中樹立行動的意識,所謂“停止空談,馬上行動”。
我們的團隊沒有大多數(shù)公司的所謂架構(gòu)師、測試和運維的角色,通過為團隊提供自動化運維和自動化測試的平臺和工具,讓開發(fā)人員負責(zé)軟件開發(fā)生命全周期。
事實上,只有研發(fā)才真正知道系統(tǒng)如何部署、如何調(diào)試、如何監(jiān)控。我們的架構(gòu)師也是開發(fā)人員,大部分都 assign 到了各個業(yè)務(wù)團隊,我們更加崇尚“開發(fā)參與架構(gòu)設(shè)計,而不是架構(gòu)師參與開發(fā)”的理念。
“吃自己的狗糧”也是我們比較推崇的文化,全團隊構(gòu)建運維的意識,避免開發(fā)完功能就萬事大吉的思想。
另外,引入了 Amazon 的”臭名昭著“的 On-Call 制度,從而讓團隊所有人能夠比較全面的了解系統(tǒng)的各個部分,能夠做到相互補位,避免”這不是我的事情“的情形發(fā)生。
勤回顧、自我批評
做的越多,可能錯的也越多,回顧不是找責(zé)任,復(fù)盤的目的是為了找到切實可行的解決方案,避免再犯。
通過建立智能報障系統(tǒng),圍繞智能報障建立起自動的問題反饋機制,將嚴重的問題記錄到 COE 系統(tǒng),逐步形成改進項,形成開發(fā)、運維和運營的閉環(huán),團隊整體自改進。
多付出、贏得信任
團隊成員彼此信任是非常重要的,尤其是團隊中比較資深的人。由于按照業(yè)務(wù)和 two-pizza 原則切分團隊之后,隨著系統(tǒng)復(fù)雜度的增加,跨團隊的溝通越來越多。因此,成員對于事情的推動力就顯得非常重要。
另外,一旦涉及到系統(tǒng)間、服務(wù)間以及團隊間的合作,問題就會復(fù)雜起來,因此,將復(fù)雜的問題分解、簡化,用簡單直接的方法解決復(fù)雜問題的能力,也就變得尤為重要。
我們要幫助大家建立這種能力,避免過度設(shè)計或者過度承諾。團隊的領(lǐng)導(dǎo)者要作為團隊的標桿,鼓勵團隊知識分享,建立學(xué)習(xí)型團隊。
交付、達成業(yè)績
對于團隊來講,對于目標的強烈關(guān)注,可以讓成員更加的專注結(jié)果,通過過程的可視化,讓研發(fā)過程對于團隊成員整體可見,有利于控制項目風(fēng)險。
通過可量化的指標對過程和結(jié)果進行有效地評估,可以有效地降低產(chǎn)品和項目交付的風(fēng)險,再輔以進度的合理追蹤和結(jié)果的定期回顧,讓團隊意識到自己的問題,在未來的過程中持續(xù)改進。
有氣量、選賢育能
領(lǐng)導(dǎo)力準則不光要在團隊中塑造,也需要應(yīng)用到日常的招聘當(dāng)中,在招聘新人的過程中,不能夠只盯著候選人有什么經(jīng)驗,會什么框架,也需要著重考量他們的綜合素質(zhì)。
一個領(lǐng)導(dǎo)力好的候選人,能夠非??焖俚厝谌雸F隊,也能夠非??斓膶W(xué)習(xí)一些知識。
建立合理的職級體系和績效評價體系
建立員工個人發(fā)展計劃
我們鼓勵團隊中資深的成員帶新人,這樣有利于知識的分享以及風(fēng)險的降低,我們還逐步建立導(dǎo)師制度,而導(dǎo)師制度是團隊中資深人員進一步晉升的重要量化考核指標。
我們還建立了個人發(fā)展計劃制度,見下圖:
任職資格
我們還是在逐步建立自己的任職資格體系。一方面,幫助 HR 和用人部門在招聘以及晉升的工作中建立一個明確的標準;另一方面,也希望團隊成員明確自己在團隊中的位置,明確如果希望晉升,團隊對個人的要求以及個人需要對團隊做出怎樣的貢獻。
下面這個模型參考了《技術(shù)管理之巔》這本書中的內(nèi)容。
總體來說,任職分為專業(yè)序列和管理序列,這里我只列出了技術(shù)序列的職級列表和能力級別。
根據(jù)不同的職級范圍,我們總結(jié)了每個職級的具體要求以及如何做,才能晉升到下一個級別,這里主要都是軟實力和交付的體現(xiàn)。
因為我們認為,必要的架構(gòu)能力、設(shè)計能力以及編程能力,是每個級別的成員都應(yīng)該具備的。
我列舉一下 SDEIII(P7)的職級要求以及晉升標準,如下圖:
之所以建立每個職級的相應(yīng)標準,一方面是為了配合個人發(fā)展計劃 IDP;另一方面,也是告訴他們?nèi)绾握_的做事和做正確的事。
建立人才庫,進行必要的人才盤點
人才九宮格 - 人員盤點利器
隨著團隊規(guī)模的擴大,團隊中的成員一定需要區(qū)分梯度,下面引用業(yè)界比較流行的"人才九宮格“并根據(jù)自己的實際情況,總結(jié)了我們自己的人才九宮格:
圖中,按照潛力和業(yè)績兩個維度,將人才進行了不同維度的區(qū)分,其目的是找到團隊中績效好,有潛力的成員,著重培養(yǎng),也就是所謂的核心人才。
對于潛力和業(yè)績低于預(yù)期的成員,加以督促改進甚至淘汰并維護好穩(wěn)定性人才,保持團隊穩(wěn)定性,而對于明星人才,需要加以晉升。
員工激勵
最后,我們來談?wù)勅藛T激勵。對于激勵,有很多的討論,那么到底如何激勵員工呢?靠薪酬和股票?不然,對于公司尤其是創(chuàng)業(yè)公司來講,不可能為人才付出絕對數(shù)值的薪水,至于期權(quán),我只能呵呵了。
那么,到底如何做呢?也就是在資源有限的情況下,如何激勵團隊成員呢?我認為建立具有正能量的團隊氛圍尤為重要。
建立團隊文化
一般而言,企業(yè)需要盈利,一定是業(yè)務(wù)導(dǎo)向的,很少有工程師決定一切的企業(yè)文化。
因此建立所謂的工程師文化太過理想化,但是,建立“尊重工程師文化”的團隊確實是切實可行的:
- 我們鼓勵團隊的 Leader 和領(lǐng)導(dǎo)跟下屬定期進行一對一的溝通,稱之為 1:1 talk,從而確保團隊成員尤其是核心成員的想法和訴求得到一定程度的滿足。
- 給每個成員充分的授權(quán),也就是管理者要充分地相信自己的團隊,如果大方向沒有問題,即使有一點繞路,也不要過分的干預(yù),防止”微觀管理“,事無巨細,還記得主人翁意識的過度運用么?
- 團隊成員要盡可能地分享自己的知識和想法,大家互相學(xué)習(xí),也通過分享能夠總結(jié)自己學(xué)習(xí)過程中零散的知識點。
- 團隊的管理者在遇到問題的時候,要聚焦答案,就事論事,不要過分詰責(zé),要與團隊一起找到問題的解決方案,不要過分的糾結(jié)事情是如何發(fā)生的。
- 要傳遞正能量,有效地解決團隊成員以及團隊之間的分歧,而不是制造矛盾,可以參考關(guān)系階梯法。
績效考核
賞罰分明,避免大鍋飯,非常有必要??冃Э己擞卸喾N方法,可以是 KPI 也可以是 OKR,但是不要太過追求形式,主要的目的還是幫助團隊成員成長。
下圖為我們簡化過的團隊 KPI 的考核方式,明年隨著團隊業(yè)務(wù)逐漸穩(wěn)定,我們會逐步用 OKR 的考核方式替換 KPI。
末位淘汰
對于績效不好的員工,而且無法有效改進的,需要進行末位淘汰,防止帶來團隊負能量。
總結(jié)
管理就是管理人和人心,管理其實是“臟活、累活”。
幫助團隊成員建立領(lǐng)導(dǎo)力,從而提高團隊凝聚力和執(zhí)行力。
建立人才盤點機制,明確核心人員,重點關(guān)注,保持團隊穩(wěn)定性。
建立寬松的團隊文化,尊重、放權(quán)、解決矛盾、有效溝通、合理衡量。
王東,創(chuàng)業(yè)公司 CTO,負責(zé)公司大數(shù)據(jù)平臺、微服務(wù)框架以及 DevOps 平臺的研發(fā)工作; 畢業(yè)于天津大學(xué),畢業(yè)后一直從事軟件相關(guān)研發(fā)和架構(gòu)設(shè)計工作,曾在普元軟件任資深架構(gòu)師、IBM GBS 任咨詢經(jīng)理、亞馬遜任架構(gòu)師等,后加入創(chuàng)業(yè)公司,從事研發(fā)和管理工作; 熱愛編程,喜歡鉆研新技術(shù),對于微服務(wù)、企業(yè)架構(gòu)、大數(shù)據(jù)以及 DevOps 有濃厚的興趣。