打造杰出軟件開(kāi)發(fā)團(tuán)隊(duì)的12條指導(dǎo)建議
I. 技術(shù)模塊切分要以業(yè)務(wù)組織架構(gòu)為指導(dǎo)。盡量和業(yè)務(wù)部門(mén)對(duì)齊,閉環(huán)。不僅僅要和產(chǎn)品經(jīng)理對(duì)齊,還要和運(yùn)營(yíng)部門(mén)對(duì)齊
II. 有意義的研發(fā)指標(biāo)一定是要能體現(xiàn)到資產(chǎn)負(fù)債表上的。每個(gè)程序員的效能要量化為營(yíng)收指標(biāo)
III. 模塊不僅要精心設(shè)計(jì)還要避免腐化。要設(shè)立一個(gè)首席架構(gòu)師的職位,所有模塊的 pr 都必須他看過(guò)之后才能合并
IV. 名字一定要取好,這事關(guān)高內(nèi)聚。例如取名為“交易平臺(tái)”,然后就可以通過(guò)顧名思義把某某交易結(jié)尾的需求塞入這個(gè)模塊
V. 單一職責(zé)是說(shuō)一個(gè)服務(wù)只做很簡(jiǎn)單的事情。比如每一張數(shù)據(jù)庫(kù)表,只要無(wú)腦封裝對(duì)應(yīng)的 CRUD 服務(wù)就可以了,這樣無(wú)論多便宜的人都可以招進(jìn)來(lái)寫(xiě)代碼了
VI. “復(fù)用”才能體現(xiàn)技術(shù)的價(jià)值。程序員如果看見(jiàn)很多功能似乎都差不多,就應(yīng)該成立一個(gè)部門(mén),專(zhuān)門(mén)寫(xiě)代碼生成工具來(lái)教產(chǎn)品經(jīng)理如何設(shè)計(jì)產(chǎn)品
VII. 服務(wù)好每一個(gè)用戶。目前服務(wù)了100萬(wàn)人,剛?cè)谕曩Y,即將服務(wù)1000萬(wàn)人,對(duì)應(yīng)的研發(fā)團(tuán)隊(duì)至少得提前擴(kuò)充10倍
VIII. 凡事預(yù)則立,不預(yù)則廢。公司主營(yíng)業(yè)務(wù)當(dāng)年就吃了單體的虧,這個(gè)新業(yè)務(wù)做為未來(lái)公司第二條增長(zhǎng)曲線,必須先把微服務(wù)拆好再開(kāi)工
IX. 自由是基本人權(quán),微服務(wù)的精髓是團(tuán)隊(duì)高度自治。每個(gè)后端團(tuán)隊(duì)都應(yīng)該選擇不同的編程語(yǔ)言。前端同學(xué)也不要羨慕后端,你們可以嘗試剛流行的微前端架構(gòu)
X. 把同技能的人才集中起來(lái),去吸引更多人才是公司最重要的事情。我們要把優(yōu)秀的前端開(kāi)發(fā)都集中到成都,把高性價(jià)比的測(cè)試集中到貴陽(yáng),在北京由產(chǎn)品經(jīng)理們統(tǒng)一完成產(chǎn)品設(shè)計(jì)
XI. 要虛心借鑒商業(yè)上得到證明了的成功經(jīng)驗(yàn)。某公司因?yàn)閼?yīng)用了微服務(wù)/事件溯源/領(lǐng)域驅(qū)動(dòng)/(此處為擴(kuò)展性預(yù)留),上市后市值翻了好幾倍
XII. 相信自己的業(yè)務(wù)是最復(fù)雜的最獨(dú)一無(wú)二的。以上11條也許適用于簡(jiǎn)單的業(yè)務(wù),但一定不適用于我們公司這樣復(fù)雜的系統(tǒng)
不想打造如此杰出軟件開(kāi)發(fā)團(tuán)隊(duì)的,請(qǐng)【閱讀原文】訪問(wèn)?https://autonomy.design/
