太可怕了!一個(gè)項(xiàng)目三套代碼,你們見(jiàn)過(guò)這種事情嗎?所謂的三套代碼,不是一套一套重構(gòu)出來(lái)的,而是正在開(kāi)發(fā)中的項(xiàng)目,由三個(gè)團(tuán)隊(duì)同時(shí)開(kāi)發(fā),哪個(gè)團(tuán)隊(duì)事先開(kāi)發(fā)出來(lái)就用哪個(gè)團(tuán)隊(duì)的,至于剩下的兩個(gè)團(tuán)隊(duì),大概率是要全部開(kāi)掉的!這是什么操作呢?
我們公司有個(gè)項(xiàng)目,開(kāi)發(fā)過(guò)程極其困難,耗時(shí)半年,但是項(xiàng)目組長(zhǎng)一句:“剩下的功能還需要半年”,徹底把老板給惹毛了!而事實(shí)是怎樣的呢?
其實(shí)項(xiàng)目組長(zhǎng)說(shuō)的沒(méi)錯(cuò),目前的項(xiàng)目代碼只能應(yīng)付客戶,幾乎所有的業(yè)務(wù)代碼都是在著急忙慌的情況下寫(xiě)出來(lái)的,里面的坑多得很,再加上很多代碼邏輯需要優(yōu)化,客戶很多需求需要補(bǔ)充,UI也需要優(yōu)化,想要完全放心得交給客戶使用,不花個(gè)半年左右的時(shí)間重構(gòu),那肯定是不行的!
當(dāng)項(xiàng)目組長(zhǎng)跟老板說(shuō)接下來(lái)需要花時(shí)間好好重構(gòu)代碼時(shí),老板不愿意,因?yàn)轫?xiàng)目進(jìn)度還得往前推,不重構(gòu)的話,一兩個(gè)月就可以把項(xiàng)目糊弄過(guò)去,重構(gòu)的話就遙遙無(wú)期了,現(xiàn)在說(shuō)是半年,到時(shí)候再推遲個(gè)一兩個(gè)月,黃花菜都涼了!
所以,老板說(shuō):“你們繼續(xù)往前趕,我找人去重構(gòu)代碼!”
研發(fā)組長(zhǎng)雖然不愿意,但是奈何老板比較堅(jiān)定,所以研發(fā)組長(zhǎng)也拿老板沒(méi)辦法。
但是,接下來(lái)老板的操作,直接把研發(fā)組長(zhǎng)看傻了,老板先是招了一批人,去重構(gòu)現(xiàn)在項(xiàng)目組的代碼,結(jié)果發(fā)現(xiàn)好像新來(lái)的那批人的效率也不咋樣,搞了兩個(gè)月連項(xiàng)目都沒(méi)跑起來(lái)。
于是,又招了一批人,這已經(jīng)是第三波人了,最開(kāi)始沒(méi)想著要搞第三套代碼,只是想著人多力量大,幫第二波人打下手。
結(jié)果老板中途又接了另外一個(gè)同樣的項(xiàng)目,眼看人手不夠了,把第三波人安排到了那個(gè)項(xiàng)目里面去了,因?yàn)榈诙ㄈ诉€沒(méi)讓項(xiàng)目動(dòng)起來(lái),所以就讓第三撥人在最開(kāi)始的項(xiàng)目組代碼基礎(chǔ)上直接繼續(xù)開(kāi)發(fā)。
所以,就有了現(xiàn)在三套代碼,看著是不是挺可笑?但是這種事情就是在現(xiàn)實(shí)中發(fā)生了!于是,就出現(xiàn)了以下矛盾。
第一個(gè)矛盾在于最開(kāi)始的項(xiàng)目組,我們就叫項(xiàng)目組A吧,項(xiàng)目組A的成員對(duì)于老板的安排很有意見(jiàn):“什么意思?覺(jué)得我們代碼不能用,所以要重構(gòu)?重構(gòu)完了那我們干啥?”,而且,每個(gè)團(tuán)隊(duì)的代碼風(fēng)格都不一樣,代碼思想也不一樣,即使重構(gòu)完了,項(xiàng)目組A也不可能再去重頭研讀和理解第二波人下稱項(xiàng)目組B的代碼,最后的結(jié)果可能就是被全員放棄。
所以,項(xiàng)目組A的成員開(kāi)始出現(xiàn)了消極態(tài)度,他們覺(jué)得反正最后寫(xiě)出來(lái)的代碼都不會(huì)被公司使用,干脆就愛(ài)咋咋地了唄!
再看項(xiàng)目組B,項(xiàng)目組B本來(lái)就是臨插一腳,老板認(rèn)為前期該踩的坑項(xiàng)目組A都幫他們踩過(guò)了,所以給他們的研發(fā)時(shí)間是壓縮過(guò)的,所以項(xiàng)目組B的成員壓力巨大。
實(shí)際上,項(xiàng)目組A的“成功經(jīng)驗(yàn)”項(xiàng)目組B吸收不了多少,因?yàn)轫?xiàng)目組A本來(lái)就很忙,根本就沒(méi)有多少時(shí)間去跟項(xiàng)目組B去討論項(xiàng)目細(xì)節(jié),所以項(xiàng)目組B只能通過(guò)看項(xiàng)目組A開(kāi)發(fā)的代碼去理解項(xiàng)目,所以進(jìn)度非常慢,而老板又不懂這些,所以對(duì)他們的進(jìn)度很有意見(jiàn),所以,項(xiàng)目組B很憋屈。
再看第三波人,也就是項(xiàng)目組C,他們才是妥妥的大冤種,不光要像項(xiàng)目組B那樣去通過(guò)代碼理解業(yè)務(wù),而且還要往前推進(jìn)第二個(gè)相同的項(xiàng)目。項(xiàng)目組A踩過(guò)的坑他們要踩,項(xiàng)目組A沒(méi)踩過(guò)的坑他們同時(shí)也在踩!
而且,因?yàn)槿齻€(gè)項(xiàng)目組搞得是同一個(gè)項(xiàng)目,但是目前環(huán)境就一個(gè),所以調(diào)試項(xiàng)目還得排時(shí)間,經(jīng)常為了搶調(diào)試機(jī)會(huì)而爭(zhēng)得面紅耳赤!
關(guān)鍵是,老板也有自己的小心思,因?yàn)楝F(xiàn)在三個(gè)團(tuán)隊(duì)都很危險(xiǎn),因?yàn)殡m然現(xiàn)在是兩個(gè)項(xiàng)目同時(shí)在進(jìn)行,但是所有東西都是一樣的。
對(duì)于這三個(gè)團(tuán)隊(duì)來(lái)說(shuō),現(xiàn)在他們是競(jìng)爭(zhēng)關(guān)系,誰(shuí)先把項(xiàng)目搞好,其他兩個(gè)團(tuán)隊(duì)就沒(méi)有了存在的意義,最好的結(jié)果就是留兩個(gè)團(tuán)隊(duì),最差的結(jié)果就是一套代碼復(fù)制粘貼到另外一個(gè)項(xiàng)目里面去,其他兩個(gè)團(tuán)隊(duì)的代碼棄用!
代碼都棄用了,團(tuán)隊(duì)還有存在的意義嗎?
結(jié)語(yǔ)
不得不說(shuō),老板的小算盤(pán)打得噼里啪啦響,搞得大家人心惶惶,我現(xiàn)在很懷疑,估計(jì)搞到最后三個(gè)團(tuán)隊(duì)的代碼都寫(xiě)不好,而且很容易出現(xiàn)第四套和第五套代碼!
說(shuō)起來(lái)理由很簡(jiǎn)單,這種項(xiàng)目壓力和三個(gè)團(tuán)隊(duì)的競(jìng)爭(zhēng)壓力下,很難保證這三個(gè)團(tuán)隊(duì)有人撐不住而離職,而團(tuán)隊(duì)的核心成員一旦離職,就會(huì)產(chǎn)生雪崩效應(yīng),演變成團(tuán)隊(duì)集體離職。
到時(shí)候老板勢(shì)必會(huì)再招一撥人來(lái)接手他們的代碼,此時(shí),以很多程序員的性格,多半可能還是會(huì)選擇重構(gòu)代碼,所以,就會(huì)出現(xiàn)第四套、第五套甚至更多套代碼。
想到這里,細(xì)思極恐?。?/p>
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.