在大廠做項(xiàng)目,如何溝通,排期和開發(fā)
但我也確實(shí)沒想到這一停就是剛好一個(gè)月,這要是放游戲里,我這都成回歸玩家了。
那么問題來了,這個(gè) 5 月我到底經(jīng)歷了哪些社會(huì)毒打?成為我在鵝廠的至暗時(shí)刻,最最忙碌,沒有之一,以至于讓我這么「囂張」地囤了一個(gè)月素材。
接下來,大家自備酒水,我開始講故事了。
一、5 月背景
我 4 月底換部門、5 月?lián)Q了 2 位 leader 承接被畢業(yè)團(tuán)隊(duì)的業(yè)務(wù),在完全不懂業(yè)務(wù)的情況,接手大量需求,并且需求是倒排的(就是 deadline 和需求定死,沒得商量。人和時(shí)間不夠,自己想辦法解決。我愿稱之為最惡心,沒有之一) 需求上涉及范圍特別大,涉及底層數(shù)據(jù)變更。如果做不好,用最壞的情況就是整個(gè)產(chǎn)品不可用,業(yè)務(wù)方直接掀桌子,我背鍋 + 原地畢業(yè)。 個(gè)人職責(zé)變更:負(fù)責(zé)整個(gè)用戶域業(yè)務(wù),第一次帶人,還是帶 3 人,跨城市,同時(shí)承擔(dān)開發(fā)任務(wù)。最忙碌時(shí)候,加上從別的小組借人,共有 8 個(gè)后端一起在做用戶需求。(七淅以前做過六位數(shù)日活的 APP,后端都沒 8 人) 開發(fā)團(tuán)隊(duì)的辦公點(diǎn)不在一個(gè)城市,產(chǎn)品也跨城市,存在異地溝通成本
以上就是七淅在 5 月的情況,壓力大到午休和晚上做夢(mèng)都會(huì)夢(mèng)到自己在工作,睡眠質(zhì)量很差。
二、需求交付結(jié)果
背景交代完了,那從五一節(jié)后回來,截止到發(fā)文的今天,6 月 6 號(hào),一共 23 個(gè)工作日,用戶域的同學(xué)和七淅都做得怎么樣了?
需求和 bugfix 一共上線 6 次,各占一半(假如每周一個(gè)版本,那 23 天只會(huì)發(fā) 4-5 次)
上線質(zhì)量這塊,反正不會(huì)是好的,就不多評(píng)價(jià)了。
小聲 bb:我覺得在那個(gè)背景下,能按時(shí)交付,并且出現(xiàn)的問題可控。在我目前的能力上來看,我真的覺得很不容易了。
三、交付質(zhì)量不好以及忙碌的罪魁禍?zhǔn)?/span>
9 成以上都是由 3 個(gè)原因疊加共同影響,用一句話來說就是:產(chǎn)研團(tuán)隊(duì)都是剛接觸新業(yè)務(wù),一上來就是超大需求,并且是倒排的。
最后,我們部門也和業(yè)務(wù)方達(dá)成共識(shí),這輪結(jié)束后,后面拒絕需求倒排,否則不長久,dddd
四、淺淺聊下交付的過程
整個(gè)大需求在不同時(shí)間進(jìn)行分批評(píng)審,因?yàn)闀r(shí)間關(guān)系,每次評(píng)審的用戶需求不能在統(tǒng)一的時(shí)間上線。
所以七淅需要和其他小伙伴梳理需求的依賴關(guān)系,提供可分批上線的需求和時(shí)間節(jié)點(diǎn)
而期間不可避免的需求扯皮,人力協(xié)調(diào)等非開發(fā)事項(xiàng)就都是七淅去做(這里很鍛煉軟技能,以及多線程工作)
最后還是因?yàn)闆]時(shí)間,所以整個(gè)大需求期間,不存在技術(shù)方案評(píng)審,代碼cr。誰承接的需求負(fù)責(zé)到底。
每天迅速過風(fēng)險(xiǎn),不問細(xì)節(jié)和過程。只要進(jìn)度正常且符合業(yè)務(wù)預(yù)期,不管用什么方式實(shí)現(xiàn)。如果中間有風(fēng)險(xiǎn)/阻塞,團(tuán)隊(duì)小伙伴會(huì)找七淅去幫忙處理。
就這樣磕磕碰碰到今天,七淅在這 22 天內(nèi),通宵 2 次,1 點(diǎn)后下班 3 次,22 點(diǎn)到第二天 1 點(diǎn)前下班次數(shù) 10+ 次。
剛好今天是第 23 天,也是最后一輪需求的上線,對(duì)此我的希望是 —— 不要通宵就好。
到此為此,七淅的 5 月搬磚內(nèi)容大概就說完了,下面的內(nèi)容分享下我自己覺得有用的方法。
先給自己疊個(gè)防杠 buff —— 不同公司差異巨大,流程不一。我只是單純分享遇到和見過的坑,存在一定的局限性。如果覺得對(duì)你沒用,可以選擇忽略。
五、小小經(jīng)驗(yàn)&小小體會(huì)
【關(guān)于溝通】
1、如果是信息同步,結(jié)論前置。接下來再換行分段描述具體信息
2、如果是請(qǐng)教別人問題,(背景和)問題前置,接下來才是說你的問題描述/分析過程。之所以背景括起來表示可選,取決于別人是否和你一樣了解背景。
3、在急需對(duì)方處理/確認(rèn)的前提下,如果在公司通信工具發(fā)送消息后(比如企微、釘釘),對(duì)方依舊沒有回復(fù),直接電話聯(lián)系,不要拖。
如果有更加緊急的事情,公司通信工具都不用,直接電話。因?yàn)闆]時(shí)間組織語言,去打一大堆字了。
4、如果自己的需求涉及其他部門,自己的進(jìn)度被阻塞且沒法進(jìn)一步解決。及時(shí)將問題反饋給上級(jí),讓 ta 幫忙推動(dòng)跟進(jìn)。如果 ta 也搞不定,問題繼續(xù)往上拋。
如果最后沒法再往上拋了,和需求方討論下問題是不是可以不用被解決,換別的方式,曲線救國行不行。
如果通通不行,一定要解決,并且自己的確搞不定 + 其他人,包含 leader 真的也都幫不了你。
那這邊建議快逃。業(yè)務(wù)沒法溝通 + leader 無能,繼續(xù)呆下去遲早再被惡心。
【關(guān)于排期】
1、要學(xué)會(huì)為了保護(hù)自己。
在團(tuán)隊(duì)有項(xiàng)目管理或其他定排期的角色的前提下,如果業(yè)務(wù)方私聊找你 xx 功能什么時(shí)候可以做完,而這個(gè) xx 功能是還沒被安排的。
不管需求是簡單還是復(fù)雜,開發(fā)不向業(yè)務(wù)承諾上線時(shí)間,可以讓業(yè)務(wù)找項(xiàng)管安排迭代處理,具體時(shí)間看對(duì)應(yīng)迭代排期。
比如說,即使需求實(shí)現(xiàn)很簡單,我們開發(fā)以為 1、2 天后就能搞定上線了。如果就這么回復(fù)業(yè)務(wù),假如測(cè)試沒人力測(cè),或者你剛好有其他高優(yōu)需求插入,最后需求沒能按我們承諾的時(shí)間上。
而業(yè)務(wù)方也已經(jīng)和業(yè)務(wù)的老大說過這個(gè)時(shí)間,現(xiàn)在「延期」了,那業(yè)務(wù)方只會(huì)說某某說過可以在 xx 號(hào)上線的,現(xiàn)在說延期。
這時(shí)我們開發(fā)就很被動(dòng)了。打工人不易,學(xué)會(huì)保護(hù)自己。做好沒人夸,別人覺得理所當(dāng)然;沒做好反被說。
2、需求估時(shí)一定要往大估。
什么意思呢?就是你做需求 A,評(píng)估需要 16 小時(shí),你就不要很老實(shí)的寫 16 小時(shí)了。
因?yàn)槟阌肋h(yuǎn)不知道,在你開發(fā)期間,會(huì)不會(huì)有線上問題要排查處理,時(shí)不時(shí)被拉去開會(huì),偶爾來自同事突然的私聊。諸如此類意料外的事情占用了你的時(shí)間。
那這時(shí)如果你一開始就留有多出來的時(shí)間,事情處理起來是不是就不那么著急了。
我之前的 leader 和說我們說,估時(shí)的 70%-80% 足夠你做完需求就好了。大家可以根據(jù)自己的實(shí)際情況調(diào)整,反正給自己留時(shí)間是一定的,不然遲早踩坑。
另外補(bǔ)充下,打消以下可能存在的顧慮:如果往大估時(shí),leader 會(huì)不會(huì)覺得我的估時(shí)太久,懷疑自己摸魚,或者產(chǎn)出低?
首先這個(gè)不用擔(dān)心。因?yàn)檫@些都是合理的評(píng)估,大家可以結(jié)合自己的實(shí)際情況往大估。
比如你基本都在開發(fā)期間被拉去參加下個(gè)迭代的需求評(píng)審。那你就可以把這部分時(shí)間算上,就算 leader 真有質(zhì)疑,我們也能夠有理有據(jù)的回復(fù)。
3、對(duì)臨時(shí)(的高優(yōu))需求的處理方式
不知大家有沒有我這樣的經(jīng)歷?
我不止一次在自己的需求已經(jīng)排期好的情況下,東西做到一半,這時(shí)業(yè)務(wù)方突然找過來:七淅呀,你這邊能不能幫忙做一個(gè) xxx 功能,今天就要,做活動(dòng)要用,發(fā)現(xiàn)之前漏提需求了。或者就是老板突然要,現(xiàn)有功能不支持
對(duì)于這種臨時(shí)需求,我一般是先看是不是舉手之勞。比如說不用改代碼,就查個(gè)數(shù)據(jù),幾分鐘的事。那我分分鐘給你,請(qǐng)叫我雷鋒(滑稽.jpg)
如果要改代碼上線,不管簡單還是復(fù)雜,我會(huì)需要產(chǎn)品讓提需求,找我 leader 和項(xiàng)管安排迭代。
首先提需求不是找產(chǎn)品的茬,目的是為了存檔和跟蹤需求進(jìn)度。萬一其他人接手,別人也沒見到相關(guān)需求,你說這是口口相傳的,這似乎也不太合適吧。
那具體安排是馬上做還是以后做,那就是大家討論的結(jié)果了。
如果是現(xiàn)在做,而我目前又排滿了,那么這個(gè)臨時(shí)需求是不是可以給其他人做?如果一定要我來,那我手上的哪些需求是不是可以和這個(gè)需求置換?
這些就都是和大家討論的內(nèi)容,畢竟人一個(gè),不會(huì)影分身。
如果大家有更合適的處理方式,希望可以評(píng)論區(qū)留言下,我學(xué)習(xí)偷師一波。
以上,都是建立在需求排期可溝通的前提下執(zhí)行的。如果遇到需求倒排,那就只能加班了(需求倒排一生黑)
【關(guān)于開發(fā)】
1、如果組內(nèi)有新人、比較年輕的開發(fā)同學(xué)。需要讓稍微熟悉業(yè)務(wù)的,有經(jīng)驗(yàn)的同學(xué)帶一下,至少前期需要多跟進(jìn)下 ta 們負(fù)責(zé)的需求。避免團(tuán)隊(duì)有的輪子重復(fù)造,也幫助其了解業(yè)務(wù),評(píng)估需求的影響面。
2、技術(shù)是實(shí)現(xiàn)業(yè)務(wù)的工具。
3、完成比完美更重要。不管大中小廠,都有屎一般的,能符合業(yè)務(wù)需求的代碼。只有業(yè)務(wù)做起來,才會(huì)對(duì)技術(shù)有更高的要求。
4、自己做需求時(shí)候,不要順手改別人的代碼邏輯,或者升級(jí)別人需要的底層依賴。這種夾帶私貨的情況,沒出問題就啥事沒有。一有問題,別人就會(huì)說你干嘛手賤。
如果真的要改,可以提技術(shù)需求來處理。這樣大家知道有這件事,我們也好找之前的開發(fā)了解當(dāng)時(shí)的業(yè)務(wù)邏輯和過測(cè)試。即使改出問題,也能及早發(fā)現(xiàn)
