我傾向于認(rèn)為亞當(dāng)·斯密對(duì)勞動(dòng)分工論述的假設(shè)是:需求穩(wěn)定,簡(jiǎn)單生產(chǎn)。對(duì)于IT領(lǐng)域來(lái)講,這些假設(shè)還成立么?
擰螺絲的卓別林
不難發(fā)現(xiàn),對(duì)分工以及個(gè)體效率的迷信已經(jīng)深刻的影響著IT領(lǐng)域。分工的端倪在招聘時(shí)已經(jīng)顯現(xiàn),即便對(duì)于差異不大的畢業(yè)生們,雇主也會(huì)根據(jù)其極有限的技能,用不同的標(biāo)準(zhǔn)進(jìn)行測(cè)試(Java, .Net, PHP等),并在入職后將其冠以前端工程師,后端工程師,測(cè)試工程師,支持工程師等不同的頭銜,甚至可能在其可見(jiàn)的職業(yè)生涯中專門(mén)負(fù)責(zé)某個(gè)文件的維護(hù)。
整體效率的優(yōu)化要求IT團(tuán)隊(duì)消除技能壁壘,培養(yǎng)多面手,根據(jù)計(jì)劃的的變動(dòng),彈性地調(diào)整任務(wù),達(dá)到各角色和流程之間的平衡。對(duì)于IT企業(yè)來(lái)說(shuō),變化從招聘時(shí)必須開(kāi)始。找到擁有學(xué)習(xí)熱情、學(xué)習(xí)能力、學(xué)習(xí)習(xí)慣的人變成了當(dāng)務(wù)之急,員工是否掌握了某種算法、語(yǔ)言或者工具應(yīng)當(dāng)從準(zhǔn)入條件降格為對(duì)于其學(xué)習(xí)能力和熱情的一種(不是一種)證明。
整體效率的優(yōu)化要求員工必須持續(xù)學(xué)習(xí)、成長(zhǎng),興趣無(wú)疑是成長(zhǎng)的催化劑,然而喪失意義的工作卻在不斷扼殺人的興趣。丹?艾瑞里在怪誕行為學(xué)里著述到:
勞動(dòng)者與他自己的生產(chǎn)活動(dòng)、勞動(dòng)目標(biāo)以及生產(chǎn)過(guò)程相分離。這使工作成為非自發(fā)性的活動(dòng),因此勞動(dòng)者無(wú)法對(duì)勞動(dòng)產(chǎn)生認(rèn)同或者領(lǐng)略到勞動(dòng)的意義,而缺少了意義,專業(yè)人員可能覺(jué)得自己好像電影《摩登時(shí)代》中查理·卓別林扮演的角色,一切都由工廠的齒輪控制,他們根本不會(huì)有全心全意工作的愿望 。
如果員工成長(zhǎng)是必須的,那么,幫助員工認(rèn)識(shí)到工作的全貌也是必須的。角色輪換是一個(gè)很好的解決方案。在項(xiàng)目?jī)?nèi)部通過(guò)角色互換,不限角色的結(jié)對(duì)工作,加強(qiáng)不同角色,不同模塊間的知識(shí)傳遞,打破技術(shù)壁壘,幫助員工從不同視角理解項(xiàng)目,鍛煉技能,進(jìn)而增加團(tuán)隊(duì)均衡生產(chǎn)的能力。
在我看來(lái),進(jìn)行角色輪換的大阻礙在于編程能力的普遍缺乏,大多數(shù)的測(cè)試、需求分析工作(鑒于大多數(shù)團(tuán)隊(duì)所處的地位,需求分析師實(shí)在言過(guò)其實(shí),更精確的名字是需求整理師),迭代管理,簡(jiǎn)單的客戶交流,學(xué)習(xí)曲線都非常低,任何成員都可以在師傅的帶領(lǐng)下迅速掌握工作要點(diǎn),然而編寫(xiě)程序卻是個(gè)例外,即便對(duì)于基礎(chǔ)良好的新人,在經(jīng)驗(yàn)豐富的導(dǎo)師帶領(lǐng)下,也需要2個(gè)月左右才可能寫(xiě)出比較體面的單元測(cè)試、較為面向?qū)ο蟮某绦。在分工的體制下,用別的角色輪換開(kāi)發(fā)人員幾乎是個(gè)死局。
非常奇怪,IT領(lǐng)域如此的看重抽象能力和邏輯分析能力,可為佐證的是層出不窮的建模語(yǔ)言,模式,領(lǐng)域模型,架構(gòu)。然而能訓(xùn)練抽象能力和分析能力的一項(xiàng)活動(dòng),卻僅僅有選擇性的開(kāi)展,這是不是意味著我們認(rèn)為IT項(xiàng)目可以在大多數(shù)人無(wú)法(也沒(méi)有能力)達(dá)成共識(shí)的情況下順利展開(kāi)并成功交付呢?在我看來(lái),編寫(xiě)程序不僅僅是一項(xiàng)技能,一種思考方式,還承擔(dān)著構(gòu)造IT團(tuán)隊(duì)成員間共同經(jīng)驗(yàn)區(qū),提高交流效率的目的。
一個(gè)值得從其它行業(yè)借鑒的經(jīng)驗(yàn)是首先展開(kāi)基礎(chǔ)素質(zhì)培養(yǎng),再進(jìn)入領(lǐng)域培養(yǎng)專業(yè)素養(yǎng),換言之,避免過(guò)早的分工,所有新人從編程開(kāi)始職業(yè)生涯,在公司的體制層面促成每個(gè)新人都能經(jīng)歷力所能及的所有角色。在具有了一定的基本素質(zhì)后,在員工對(duì)工作內(nèi)容和自身興趣有了充分的了解后,根據(jù)個(gè)人意愿進(jìn)入領(lǐng)域發(fā)展專業(yè)技能,興趣將成為員工成長(zhǎng)的內(nèi)在動(dòng)力,而良好的基本素質(zhì)將使員工有能力在專業(yè)崗位上施展自己的想法。
同時(shí)公司應(yīng)當(dāng)鼓勵(lì)員工跨界工作,《應(yīng)用Selenium和Ruby進(jìn)行面向領(lǐng)域的Web測(cè)試》的作者是擁有卓越能力的開(kāi)發(fā)人員,他曾經(jīng)進(jìn)行了相當(dāng)長(zhǎng)時(shí)間的測(cè)試工作,在其它人抱怨自動(dòng)化界面測(cè)試難于維護(hù)時(shí),他的抽象能力、分析能力已經(jīng)幫他提煉出測(cè)試模式,識(shí)別出缺陷,找到了優(yōu)雅高效的工作方式并誕生了這篇的文章。
丹·艾瑞所言于我心有戚戚焉。
知行合一
在過(guò)去9個(gè)月間我們?cè)趫F(tuán)隊(duì)中進(jìn)行了建設(shè)全功能團(tuán)隊(duì)的初步實(shí)踐,在分享具體實(shí)踐前,我希望下面的總結(jié)性數(shù)據(jù)能幫助你獲得一些背景知識(shí)。
項(xiàng)目處理的是期貨交易領(lǐng)域,使用的技術(shù)棧是C#, ASP.NET MVC。團(tuán)隊(duì)主要由八名開(kāi)發(fā)人員以及兩名測(cè)試人員組成(其中一名測(cè)試人員在項(xiàng)目中期加入),其中4位是畢業(yè)生,3位具備工作經(jīng)驗(yàn),但剛剛加入Thoughtworks,只有一位開(kāi)發(fā)人員具備.Net開(kāi)發(fā)經(jīng)驗(yàn)。
下面是全部35周的燃盡圖,黑色實(shí)線代表項(xiàng)目的范圍,綠色實(shí)線代表開(kāi)發(fā)完成的速度,藍(lán)色實(shí)線代表測(cè)試完成的速度,每周為一個(gè)迭代。