天天看點

Tech Lead 實踐

項目結束,休一個長假,從忙碌中停下來才發現,身體的困乏無法掩飾思想的空洞,是以半夜爬起來(估計是下午茶喝多了,人還是不能太安逸)。

上個項目是我這次換工作的第一個項目,我的角色是Tech Lead,這個項目依舊保持了90%項目的特點,時間緊,任務重,建立團隊。幸好這個項目比較大,有兩個scrum team, 是以有兩個Tech Lead,我們根據各自的特長進行分工。這次是我第一次以Tech Lead的角色進入項目,是以有很多做的不足,希望通過這次總結能對Tech Lead有新的認識。

Tech Lead的職責:

Scrum 團隊在Tech Lead的選擇上一般會選擇經驗豐富,技術熟練的開發人員來擔任,隻從字面來看,Tech=技術上有所長,Lead=管理上有建樹

目前我整理了Tech Lead的三個主要職責:1.技術決策,2.流程管控,3.連接配接。

技術決策

根據我們在上一個項目的經驗來看, Tech Lead要負責項目開發生命周期中所有技術相關的問題,1.架構;2.根據項目人員技術棧決定項目技術棧及開發工具;3.提前規劃項目在內建,測試,部署階段的工作;4.提前對項目中的關鍵技術安排人員進行驗證(注:别人解決不了的問題,自己上);5.代碼審查;6.story point 估算。

建議:

1.多和架構師針對項目架構進行溝通,深刻了解需求

2.對代碼品質進行定義,代碼審查時注意bad smell,大類,大方法,考慮性能,考慮IO操作及資料庫等資源的釋放。

3.安排團隊對代碼進行讨論并重構.

4.建議對項目所有story進行整理,然後使用德爾菲法對項目進行初步估算,避免撲克牌估算的效率低下,如果時間緊急,可以在德爾菲法技術上使用PERT。

5.關鍵點安排結對程式設計。

6.非功能性需求往往占用項目40%的時間。

7.早起建立需求了解的計劃,幫助團隊成員了解需求。

流程管控

嚴格要求項目按組織要求進行開發,在軟體開發生命周期中,組織對過程又嚴格的定義,比如DevOps,TDD,BDD等。Tech Lead了解軟體開發過程中的所有環節,是以能夠對流程進行管控,這裡強調組織要求及組織文化,避免自傷。

建議:

1.使用持續內建–>堅持使用持續內建,如果不能送出建構,至少每日建構。

2.建議TDD而非Unit,TDD或者Unit一定要有,如果可能,請加把勁跑起來BDD。

2.對代碼release标準進行定義,在項目初期定義release的程式并在後期不斷維護。代碼覆寫率标準,代碼缺陷嚴重等級定義及修複時間

3.QA及開發的溝通方式定義。

4.性能測試。

連接配接

有項目就有溝通,有出資人,有受益人,有使用者,有開發人員,還有運維人員等等,Tech Lead連接配接了BA,SA,DEV多個角色,是技術團隊與外界的橋梁,在開發過程中取得團隊内部各個角色的支援,建立良好的溝通環境是基礎。

Tech Lead與BA:Tech Lead是需求接收者,是需求到技術語言的轉化者

Tech Lead與PA:Tech Lead是團隊節奏的實際操控者,是業務功能的傳遞代表

Tech Lead與SA:Tech Lead是項目架構的實踐者

Tech Lead與DEV:Tech Lead是導師更是戰友

建議:

1.每個月安排與各個角色至少進行一次one one溝通。提前準備好溝通的大綱,沒有準備的溝通都是耍流氓。

2.對幹系人進行登記并分析。

3.對外部幹擾進行管控,保證開發人員的開發時間。

完~

繼續閱讀