課程目標(biāo):系統(tǒng)了解TL的角色與職責(zé)泉坐;了解TL的知識(shí)體系與工具为鳄,包括風(fēng)險(xiǎn)管理、用價(jià)值流圖梳理發(fā)布之路腕让、技術(shù)愿景對齊孤钦、CFR、用干系人管理工具來識(shí)別客戶纯丸、沖突處理等偏形。
一、TL角色認(rèn)知
技術(shù)發(fā)展路線:架構(gòu)師觉鼻、某個(gè)領(lǐng)域深耕成為技術(shù)專家俊扭、管理類、敏捷顧問坠陈。
心目中理想的TL:靠譜萨惑、技術(shù)好捐康。
1. TL職責(zé),和PM庸蔼、架構(gòu)師解总、senior dev職責(zé)的交叉與區(qū)分
1)阻止項(xiàng)目上不好的事情發(fā)生,如資源超過限制姐仅;2)給團(tuán)隊(duì)提供工作所需資源花枫,保障團(tuán)隊(duì)順暢工作;3)技能導(dǎo)航掏膏,合適的人做合適的事劳翰,同時(shí)兼顧人員成長,如讓junior的人獲得指導(dǎo)馒疹;4)做決定佳簸,對比不同技術(shù)方案、風(fēng)險(xiǎn)行冰、目標(biāo)溺蕉,作出靠譜的決定;5)價(jià)值展現(xiàn)悼做,將價(jià)值和知識(shí)做團(tuán)隊(duì)疯特、客戶層面的呈現(xiàn),贏得團(tuán)隊(duì)肛走、客戶信任漓雅;不僅是通過交付了哪些功能來展示價(jià)值,還需要展示我們做得好的地方朽色。
這5條是effective leadership的五要素邻吞,是PM和TL的交叉職責(zé)。
6)知識(shí)葫男,按團(tuán)隊(duì)所需抱冷,為所有人呈現(xiàn)所需知識(shí),做團(tuán)隊(duì)中可靠的知識(shí)傳播者梢褐;7)指導(dǎo)旺遮,指導(dǎo)普通開發(fā)解決技術(shù)難題。8)梳理標(biāo)準(zhǔn):為項(xiàng)目的代碼質(zhì)量樹立高標(biāo)準(zhǔn)盈咳。9)解決難題:解決項(xiàng)目上最難的技術(shù)問題耿眉。15)整體理解:清楚的理解團(tuán)隊(duì)正在實(shí)施的工作的所有細(xì)節(jié),知道影響當(dāng)前工作的因子鱼响。
前四條是TL專屬職責(zé)鸣剪;最后一條也適用senior dev
10)責(zé)任,項(xiàng)目成功交付的總負(fù)責(zé)人;11)為團(tuán)隊(duì)創(chuàng)建好的工作氛圍筐骇,讓所有人愉快工作债鸡。
這兩條是PM專屬職責(zé)。
12)技術(shù)的深入理解:深入的技術(shù)理解和豐厚的技術(shù)背景拥褂,避免實(shí)現(xiàn)局部最優(yōu)的解決方案甚至是不成熟的方案娘锁;13)拉通和標(biāo)準(zhǔn)化:通過過硬的溝通技能,幫助各部門就技術(shù)愿景達(dá)成一致饺鹃,為整個(gè)公司的技術(shù)標(biāo)準(zhǔn)化提供建議;14)轉(zhuǎn)化:將產(chǎn)品的創(chuàng)意或者粗略想法轉(zhuǎn)化為可靠的技術(shù)方案间雀。
這是典型的架構(gòu)師職責(zé)悔详,架構(gòu)師需要豐厚的技術(shù)和過硬的溝通技能,是業(yè)務(wù)惹挟、技術(shù)部門的橋梁茄螃,也是多部門之間的橋梁。資深TL也會(huì)涉及這些工作连锯。
成為一個(gè)TL归苍,應(yīng)該在哪些方向努力?可以看一下下面這張圖运怖。TL職責(zé)主要包括developer拼弃、leadership、architect等方面摇展∥茄酰或者分為engaging with business、engaging with team咏连、architecture&infrastructure盯孙、delivery & risk。
如果你的團(tuán)隊(duì)有一個(gè)技術(shù)很厲害的人祟滴,那么你可以更多focus在leadership職責(zé)振惰,但如果沒有,那么tech也很重要垄懂。對于自己擅長的事情骑晶,在團(tuán)隊(duì)中尋找并培養(yǎng)第二梯隊(duì),并放權(quán)給第二梯隊(duì)埠偿;對于讓自己不舒服的事情透罢,要有責(zé)任感。
作為TL在項(xiàng)目上寫代碼時(shí)間很少冠蒋,更多的時(shí)間用在管理工作羽圃,那么如何保持技術(shù)水平?投入時(shí)間、熱情在技術(shù)代碼朽寞,做代碼練習(xí)识窿、訂閱stackoverflow上的技術(shù)問題等。另外脑融,伴隨經(jīng)驗(yàn)增加喻频,技術(shù)判斷力可能提升。
TL的光環(huán)與職責(zé)是相伴而來的肘迎。
2. 角色認(rèn)知模型
junior的TL更跟你介紹TL工具集甥温,senior的TL會(huì)強(qiáng)調(diào)管理的價(jià)值,如RM知道什么人適合安排在什么項(xiàng)目妓布,有的時(shí)候姻蚓,人分配對了,那項(xiàng)目就成功了一半匣沼;比如PM對人心更加洞悉狰挡,在跟客戶溝通的時(shí)候,PM更能洞悉客戶的目的释涛,從而使得我們和客戶的溝通事半功倍加叁。認(rèn)可管理的價(jià)值,把人的問題理順了唇撬,做事情會(huì)變得更加順利它匕。
3. Leader與boss
Leader更傾向于lead by example,作為團(tuán)隊(duì)的role model局荚。
SOW超凳,售前的最后一步,和客戶簽署的合同耀态,定義了什么是成功的交付轮傍,CFR如2w的TPS,99.999的可用性首装。售前的最后一步是inception创夜。
二、從極客到帶領(lǐng)團(tuán)隊(duì)
從極客到帶領(lǐng)團(tuán)隊(duì)仙逻,從dev的視角切換到帶領(lǐng)團(tuán)隊(duì)驰吓;用兩匹馬的馬車來比喻,dev是拉車的馬系奉,TL是拿著鞭子趕馬車的人檬贰,需要協(xié)調(diào)兩匹馬的步調(diào),需要看好目的地和各個(gè)方面缺亮。從dev到TL翁涤,是一種升維,通常當(dāng)某些問題解決不了時(shí),我們需要升維思考葵礼,尋求解決方案号阿。
面臨的挑戰(zhàn)從獨(dú)立完成任務(wù)到團(tuán)隊(duì)協(xié)作。團(tuán)隊(duì)對技術(shù)方案鸳粉、代碼風(fēng)格的統(tǒng)一認(rèn)知很重要扔涧。也就是我們說的consistency over cleverness。TL的主戰(zhàn)場:codebase届谈、團(tuán)隊(duì)中的人枯夜、發(fā)布之路等。
1. Programming
編碼時(shí)間過多可能會(huì)忽略與客戶的溝通艰山,團(tuán)隊(duì)培養(yǎng)等問題卤档;編碼時(shí)間過少則對項(xiàng)目的實(shí)際理解變少。推薦至少30%的時(shí)間用于編碼程剥。避免工作在關(guān)鍵任務(wù),從而產(chǎn)生dependency導(dǎo)致難以脫身汤踏;參加code review织鲸,讀git log等。做決定的時(shí)候溪胶,對于瑣碎問題搂擦,如空格空行,需要盡快做決定哗脖;把更多時(shí)間精力放在更重要的事情瀑踢。
TL影響力從何而來?respect才避。幫助團(tuán)隊(duì)橱夭,比如code review中的建議、幫助團(tuán)隊(duì)成員解決難題等等桑逝。這樣后面你需要推行一些事情的時(shí)候棘劣,才更容易讓別人接受。
TL引領(lǐng)團(tuán)隊(duì)文化楞遏,比如pipeline會(huì)不會(huì)紅著過夜茬暇,大家有想法是否可以安全的說出來。常見的team smell:如avoid conflict(同事之間互現(xiàn)修改彼此的代碼)寡喝、not admitting mistakes(指責(zé)他人)糙俗、not offering new ideas(開會(huì)的時(shí)候不講話)、not asking for help(同事每天站會(huì)都說快做完了预鬓,卻一直沒有做完)巧骚。
2. people
1)Diversity,團(tuán)隊(duì)中的人有不同風(fēng)格;并且每個(gè)人看到的東西网缝,基于他的角度巨税、認(rèn)知、知識(shí)背景粉臊,看到的東西是不同的草添。集體精確度=平均精確度+diversity。
2)develop others
橫軸是能力扼仲、縱軸是面臨的挑戰(zhàn)远寸。如果能力不夠但任務(wù)很重,則陷入焦慮屠凶;如果能力很強(qiáng)但沒什么挑戰(zhàn)就會(huì)無聊驰后;flow代表的是一個(gè)正常的狀態(tài)。我們在發(fā)展自身能力矗愧、或者發(fā)展他人的時(shí)候灶芝,可以先讓他進(jìn)入anxiety,也就是走出舒適區(qū)唉韭,來驅(qū)動(dòng)他的能力提升夜涕,進(jìn)入flow。
3)sweet spot是體育名次属愤,指的是擊球的時(shí)候擊中的最有力的一個(gè)點(diǎn)女器。找到自己的、或者團(tuán)隊(duì)中人的sweet spot住诸,幫助發(fā)掘潛能驾胆,更好的成長。
4)learning activities:code review贱呐、pair programming丧诺、brown bag session、book club吼句、technical retro锅必、spike showcase演示spike的結(jié)果。
5)bad apple:一個(gè)人有不好的行為惕艳,會(huì)影響到團(tuán)隊(duì)的其他人搞隐。bad apple并不是人,而是行為或者態(tài)度远搪,TL需要盡早識(shí)別出團(tuán)隊(duì)的bad apple劣纲。
3. process
工作行為指的是是否會(huì)直接給予他指令;關(guān)系行為指的是對他的意愿的支持谁鳍,比如在他自信不足的時(shí)候給予的鼓勵(lì)癞季。因此directing主要針對熱情洋溢的初學(xué)者劫瞳,coaching是對于困惑的學(xué)習(xí)者,supporting是針對有能力绷柒,但信心不足的貢獻(xiàn)者志于;delegating則指的是獨(dú)當(dāng)一面的目標(biāo)達(dá)成者。
當(dāng)組建一個(gè)新項(xiàng)目團(tuán)隊(duì)的時(shí)候废睦,通常會(huì)有上述過程發(fā)生伺绽。
TL需要給自己一些時(shí)間
評(píng)估團(tuán)隊(duì)狀態(tài),項(xiàng)目技術(shù)棧和團(tuán)隊(duì)技術(shù)能力的gap嗜湃;團(tuán)隊(duì)中每個(gè)人的工作能力奈应、意愿;在加入團(tuán)隊(duì)初期和各個(gè)成員f2f购披,了解他們的工作能力杖挣、意愿、對未來發(fā)展的預(yù)期刚陡。