一位996、CRUD開發者的一天


記一筆流水賬

今天我打算記一筆流水賬,主要記錄我的一天中干的事情,並思考效率低下的原因,同時分析一些可用的解決方案。

清早·開始做計划

早上六點四十,被夢想喚醒,然后看一會書,吃早餐,送娃上學。

九點來到公司,開始一天的工作。在工作開始之前,我會花五分鍾先做一個當天的計划,大概是這樣的。

  1. (講道理應該有每日站會,事實上我是xx項目的負責人,但是。。我把站會給省了,把站會取消對項目的危害非常大。后期再討論)
  2. 對xx項目的周計划進行跟進和修訂。
  3. 檢查昨天完成的功能,並記錄和指派bug。
  4. 整理文檔,對昨天完成新功能的特性進行說明。
  5. 解決屬於自己名下的bug。
  6. 開始兩個下一階段需要交付的新功能,比較簡單的業務接口,代碼行預計不超過80行。

這些任務中,除了第五項和第六項相對來說可能會耗時比較長外,其他每個單項任務基本上可以在25分鍾內完成,而且也確實是按任務優先級和重要性順序來安排的,看起來還挺合理的,總體上屬於在8小時內可以完成的工作量,而且其實或許還略微有點不飽和。。。

執行任務(下面是流水賬,可以略過)

於是我喝了一口水,開始完成第一項任務:對xxx項目的周計划進行跟進和修訂。

(如果是周一,以前我還會根據上周完成情況對月計划和總體計划進行適度的總結,但是。。自從來到互聯網公司后,我把這個好習慣也丟掉了,好吧,是因為假裝要敏捷要擁抱變化,所以把總體計划和月計划省掉了)。

但是,當我開始處理這項事務時,計划外的第一件事情發生了。在測試環境下,客戶端反映某接口出現了不該出現的問題,於是我被迫打斷這項任務,花了一分鍾時間,跟他對接口問題進行了檢查,發現是對方參數傳錯了。

嗯。問題解決。繼續開始剛剛的任務。

到哪里了?哦。。還在做計划,接着我迅速調整狀態,花了幾分鍾就把任務完成了。

然后開始第二項任務。

這時,剛剛客戶端又找我了,他說接口還是有問題。

我以為又只要花一分鍾,事實上這次我花了30分鍾,因為確實是原來的代碼邏輯中存在缺陷,需要進行代碼修改、然后發布、再測試代碼。

確認這個問題已經得到解決后,還是處理之前擱置的任務。花了20分鍾處理任務3。

開始處理任務4,這項任務也相對來說比較簡單,所以不到五分鍾解決了。

開始處理任務5。。。在我名下共有20個bug。。。以每個bug5分鍾來衡量,我大概需要花100分鍾才能解決。但是當我開始解決第一個bug時。

又有其他人開始找我了,運營開始找我,說xxx場景下似乎出現了xxx邏輯不對。

線上問題必須優先解決,趕緊的,仔細思考問題發生的條件、對鏈路服務進行跟蹤和分析、查看半年前編寫的代碼邏輯,最終花了15分鍾分析出問題,並花了10分鍾將問題妥善解決。

繼續開始修復bug。在bug修復的過程中,發現是產品邏輯存在缺陷,於是跟產品對任務進行進一步明確、梳理業務、設計更加具體細化的流程。花了1小時。

到中午12點,我上午共完成任務3項,修復了一個bug。

下午不屬於問題的高峰期,但是又發現了產品邏輯之外的一些其他問題,最終解決了15個bug。

積壓了5個bug,留到晚上來解決吧。

當夜幕降臨,我需要花2個小時來解決我剩余的bug和2個未完成的新功能開發任務。

事實上等到晚上八點半時,我完成了剩余bug,新功能完成了一個,但此時效率已經差的不行了,沒辦法,硬着頭皮也得完成今天的任務。

(會不會欠下新債,顯然毋庸置疑)

晚上9點,所有任務已基本上圓滿完成。

總結完成情況

總結今天完成的任務,共完成任務五項,其中修復bug20個,寫了60行新代碼,共耗時10小時。

顯然我的工作效率是很差的,尤其是晚上效率更差,我最佩服那些自稱晚上效率很高的人,尤其還有一些人特別喜歡深夜擼碼,倒上一杯小酒,借着凌晨的寂靜,寫着愛寫的代碼,他們很厲害,因為他們很會自欺欺人。

來統計當天完成工作的工時占比:

工作內容

時間(分鍾)

梳理日計划

5

修訂周計划

10

接口聯調

31

運營對接

25

修復20個bug

250

編寫新功能

120

日常項目溝通

120

其他

40

總計

601

問題分析

以上流水賬實際上是我們這樣一家普通互聯網公司的日常,當然,對我個人而言,實際上投入到運營對接中的時間相對來說是不算多的,我了解我們公司有的開發者每天需要花至少3小時與運營人員進行問題的對接,這顯然會直接影響了開發者的工作效率。

(我相信一流互聯網公司一定不是這樣的)

從上圖可以看出我們的日常工作安排存在以下問題:

  • 修復bug這種還技術債的任務,耗時接近47%,占了將近一半的時間。嗯,能力確實不行,能不能采取措施讓債不欠這么多,這是人才三角(專業技能、行業知識、軟實力)需要達到的目標。我曾經打算在功能開發中引入TDD來減少返工率,但是最終決定還是先擱置這個想法。
  • 我司項目管理的形式是虛擬團隊,產品經理和測試工程師主要在深圳,而研發團隊在長沙,因此,每天投入到團隊溝通中的時間占比達到20%。事實上虛擬團隊這種開發模式,作為目前比較新興的項目溝通形式,已經被互聯網公司廣泛采用。但是虛擬團隊成員間分處異地、無法面對面溝通,由於文化、工作節奏、技術等原因,容易造成比較大的溝通成本。可以采取以下措施進行優化:
    • 1、打造高保真原型圖,進一步拆解任務目標,讓任務目標細分。
    • 2、需求討論時間前置,需求的特點是漸進明細的,應盡量將對需求的溝通在研發階段開始前進行落實,減少對於研發階段過程中的額外時間浪費。
    • 3、快速沖刺階段盡可能面對面溝通。
    • 4、功能交付缺乏Desktop Check,意味着產品經理和測試工程師無法及時了解功能的實際開發情況,也意味着團隊間對於成果的交付進度、實現方式,本身是存在疑問的,這將提高溝通成本。
  • 如果按每天工作十小時,為3小時為與運營溝通問題的解決來算,占比達30%。說明對於項目成果的交付上,依然存在不少可以優化和提升的空間。或許可以采取以下措施。
    • FAQ文檔的進一步細化。
    • 知識共享。
    • 項目成果移交本身需要有更加規范化的管理措施。

 

結論

以上是一位CRUD互聯網996開發者的一天,看起來似乎過得很充實, 卻依然需要通過加班來完成當天的任務,而且甚至長期工作時間大於10個小時,與體力勞動者本身沒有太大區別。也許大家都差不多、總是像機器一樣活着,思考都成為一種負擔。總以為靠蠻力可以解決,實際上輸出的或許是一種無用的解決方案。這樣的付出,大概會覺得毫無價值。

然而我們必須停駐腳步,認真思考當下的價值,思考效率和意義的平衡,讓我們的生活更加有意義。

牢記准則:“做正確的事,正確的做事”。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM