建立軟件開(kāi)發(fā)團(tuán)隊(duì)時(shí)要避免的7個(gè)問(wèn)題
建立和維護(hù)一個(gè)高性能的軟件開(kāi)發(fā)團(tuán)隊(duì)是一個(gè)持續(xù)努力的過(guò)程。挑戰(zhàn)范圍包括從競(jìng)爭(zhēng)激烈的市場(chǎng)中吸引優(yōu)秀人才到提供有趣和富有挑戰(zhàn)性的工作,以及組建團(tuán)隊(duì)結(jié)構(gòu)和促進(jìn)人員成長(zhǎng)。
我們很幸運(yùn)地工作在一些致力于提升交付質(zhì)量和頻率的軟件開(kāi)發(fā)團(tuán)隊(duì),并且我們發(fā)現(xiàn)了一些非常的常見(jiàn)阻礙團(tuán)隊(duì)快速地推出優(yōu)質(zhì)軟件的結(jié)構(gòu)和做法:
1:“DevOps”孤島
特別是隨著一個(gè)團(tuán)隊(duì)的成長(zhǎng),或者可能是為了填補(bǔ)當(dāng)前團(tuán)隊(duì)技能集中存在的差距,我們會(huì)被誘惑著在團(tuán)隊(duì)中或團(tuán)隊(duì)周?chē)为?dú)的功能以執(zhí)行特定的工作崗位。
我們看到的最常見(jiàn)的表現(xiàn)是操作(通常成為DevOps或基礎(chǔ)設(shè)施),而且在操作中任何基礎(chǔ)設(shè)施相關(guān)的任務(wù)需要這個(gè)單元中的某個(gè)人執(zhí)行。我們認(rèn)為這在軟件交付的重要組成部分——部署和運(yùn)行的周?chē)黾恿藳](méi)有必要的邊界。
我們寧愿看到真正的DevOps技能植入到軟件交付團(tuán)隊(duì)中,讓這些團(tuán)隊(duì)能夠端到端地交付他們的應(yīng)用程序,并負(fù)責(zé)地運(yùn)行他們的應(yīng)用程序。
2:缺少權(quán)力
我們經(jīng)常能看到權(quán)力缺乏和表現(xiàn)不佳之間呈現(xiàn)了高度的相關(guān)性。一個(gè)團(tuán)隊(duì)需要能夠管理自己每一天的工作負(fù)荷,能夠做出技術(shù)決定以及,如有必要的話,還能改變他們的工作方式。
一個(gè)團(tuán)隊(duì)被給予小單位的高規(guī)格的工作的地方,并且自上而下做出決定的地方,很可能就是那里你會(huì)覺(jué)得冷漠的地方。
我們發(fā)現(xiàn)如果給予團(tuán)隊(duì)一個(gè)明確的、注重商業(yè)效益的理念,并且授權(quán)去弄清楚交付的***方式,那么團(tuán)隊(duì)執(zhí)行***。
3:隔離利益相關(guān)者
在一些組織中可能存在不鼓勵(lì)或不允許交付團(tuán)隊(duì)與利益相關(guān)者接觸的結(jié)構(gòu)或做法。一個(gè)高性能的團(tuán)隊(duì)需要與那些軟件發(fā)布的利益相關(guān)者進(jìn)行定期和開(kāi)放的交流溝通。
除了慣常的論壇,例如kick-off會(huì)話和案例展示,可用來(lái)促進(jìn)對(duì)話,我們鼓勵(lì)使用通信工具,例如Slack,促使利益相關(guān)者和開(kāi)發(fā)人員之間能夠進(jìn)行持續(xù)的討論。
4:?jiǎn)螛屍ヱR和團(tuán)隊(duì)人員過(guò)多
我們發(fā)現(xiàn)***的團(tuán)隊(duì)規(guī)模是2至4人。對(duì)于大多數(shù)人來(lái)說(shuō),在只有1個(gè)人的團(tuán)隊(duì)中工作比起和其他人一起工作更缺乏問(wèn)責(zé)和社會(huì)互動(dòng)。
當(dāng)團(tuán)隊(duì)規(guī)模開(kāi)始超過(guò)大約4人的時(shí)候,溝通會(huì)變得困難起來(lái),并且會(huì)降低團(tuán)隊(duì)的責(zé)任感。
5:質(zhì)量是所有人的工作
關(guān)于質(zhì)量挑戰(zhàn)一個(gè)太過(guò)于常見(jiàn)的回應(yīng)是,試圖通過(guò)引入專(zhuān)門(mén)的工作崗位,或者甚至更糟的是,引入測(cè)試來(lái)解決這個(gè)問(wèn)題。在那些團(tuán)隊(duì)和生產(chǎn)運(yùn)行的軟件之間感知到安全網(wǎng)的地方,責(zé)任水平會(huì)下降,然后質(zhì)量緊跟其后。
通過(guò)鼓勵(lì)質(zhì)量成為團(tuán)隊(duì)的責(zé)任,接受例如同行審查的做法,以及自動(dòng)化測(cè)試技術(shù)地不斷采用,我們看到了更好的成功。
6:功能優(yōu)先于技術(shù)債務(wù)
在商業(yè)交付截止期限和跟上技術(shù)債務(wù)之間有一個(gè)平衡。如果不保持平衡,技術(shù)債務(wù)會(huì)迅速阻礙團(tuán)隊(duì)的交付能力。
團(tuán)隊(duì)樂(lè)意累積技術(shù)債務(wù),或***樂(lè)意對(duì)此視而不見(jiàn),是一些在我們開(kāi)始和一個(gè)軟件開(kāi)發(fā)團(tuán)隊(duì)工作時(shí)可以立馬識(shí)別和需要改善的行為模式。
一個(gè)團(tuán)隊(duì)需要被授權(quán)并被鼓勵(lì)去向他們的Product Owner推銷(xiāo)償還技術(shù)債務(wù)的好處,這樣技術(shù)債務(wù)就可以隨著功能開(kāi)發(fā)一起解決掉。
7:在團(tuán)隊(duì)建設(shè)上投資不足
在建設(shè)一個(gè)有凝聚力的團(tuán)隊(duì)時(shí)謹(jǐn)記一些基本知識(shí)非常重要。促進(jìn)大量的社會(huì)活動(dòng)來(lái)為團(tuán)隊(duì)提供論壇,讓團(tuán)隊(duì)能夠享受彼此工作之外的企業(yè)氛圍,同時(shí)為個(gè)人提供學(xué)習(xí)和更好地保持自己進(jìn)步的機(jī)會(huì)。
提高任何團(tuán)隊(duì)的幸福感、生產(chǎn)力和凝聚力仍然需要持續(xù)的努力,而并且需要定期修正方向。如果你想要構(gòu)建一個(gè)高性能的軟件交付團(tuán)隊(duì),那么我們會(huì)建議你強(qiáng)硬地雇用人才,并投資于可以提供定期反饋循環(huán)的實(shí)踐行為,以幫助你植入一種經(jīng)常反省和不斷改進(jìn)的文化。
譯文鏈接:http://www.codeceo.com/article/7-problems-to-avoid-build-team.html
英文原文:7 Problems to Avoid When Building a Software Team