如何用研發(fā)效能搞垮一個團隊

到底什么是研發(fā)效能

更高效:價值的流動過程必須高效順暢,阻力越小越好。 更高質量:如果質量不行,流動越快,死的也會越快。 更可靠:安全性和合規(guī)性要保障好。 可持續(xù):輸出不能時斷時續(xù),小步快跑才是正道,不要憋大招。 更優(yōu)的業(yè)務價值:這是從需求層面來說的,你的交付物是不是真正解決了用戶的本質問題。比如:“女生減肥不是本質問題,女生愛美才是”。可以體會一下。
為什么大廠都開始搞研發(fā)效能

01
02
03
研發(fā)效能真的能夠提高嗎
軟件架構本身的復雜度提升(微服務,服務網(wǎng)格等) 軟件規(guī)模的不斷增長(集群規(guī)模,數(shù)據(jù)規(guī)模等) 研發(fā)團隊人員規(guī)模不斷擴大引發(fā)溝通協(xié)作難度增長

減緩研發(fā)效能惡化我們能干啥

可以通過All-in-one的開發(fā)環(huán)境降低每位開發(fā)人員開發(fā)環(huán)境準備的時間成本,同時又能保證開發(fā)環(huán)境的一致性。更高級的玩法是使用云端集成開發(fā)環(huán)境IDE,實現(xiàn)只要有瀏覽器就能改代碼,這一領域國內典型的代表就是騰訊云CODING旗下的Cloud Studio以及Github目前處于beta測試階段的CodeSpaces。
可以借助基于AI的代碼提示插件,大幅度提升IDE中代碼的開發(fā)效率。輸入一段相同的代碼,不借助AI代碼提示插件,需要敲擊鍵盤200次,啟用插件可能只需要50次鍵盤敲擊,這樣可以更容易讓開發(fā)工程師進入“心流“狀態(tài),實現(xiàn)”人碼合一“。
代碼的靜態(tài)檢查沒有必要等到代碼遞交后由CI中的Sonar流程來發(fā)起,那個時候發(fā)現(xiàn)問題再修復為時已晚,完全可以通過Sonar Lint插件結合IDE實時發(fā)起本地的代碼檢查,有問題直接在IDE中提示,直接修復,這樣開發(fā)工程師會更愿意修復問題,因為成本更低,也不會引起修復后的再次發(fā)版。
單元測試比較耗費時間,可以借助EvoSuite之類的工具降低單元測試的開發(fā)工作量。
對于規(guī)模較大的項目,每次修改后編譯時間比較長。可以采用增量編譯,甚至是分布式編譯(Distcc和CCache)提升效率,對于Maven項目還可以通過緩存pom依賴樹進一步降低編譯時間。
前端開發(fā)可以借助JRebel和Nodemon之類的工具使前端開發(fā)預覽的體驗更流暢,實現(xiàn)前端代碼的“所見即所得”,避免重復的編譯、打包、部署和重啟步驟,以此提高開發(fā)過程的流暢度。
選擇適合項目的代碼分支策略對提升效率也大有幫助。
構建高度自動化的CI和CD流水線將大幅提升價值的流轉速率。
選擇合適的發(fā)布策略也會對效能和風險之間的平衡起到積極的作用。比如架構相對簡單,但是集群規(guī)模龐大,優(yōu)選金絲雀,如果架構比較復雜,但是集群規(guī)模不是太大,可能藍綠發(fā)布更占優(yōu)勢。
引入DevSecOps與DevPerfOps實踐,使安全和性能不再局限在測試領域,而是形成體系化的全局工程能力,讓安全測試成為安全工程,性能測試成為性能工程。
...
研發(fā)效能的“羅生門”
01
02
03
04
05
06
07
研發(fā)效能的“冷思考”
最后,回到工程師層面,研發(fā)效能的提升對我們而言又意味著什么?
01
02
評論
圖片
表情
