專案開發中對成長的一些思考

he發表於2022-03-24

寫作目的

希望通過這次分享能夠讓大家更好的去獨立進行專案開發,或者是帶著團隊一起去完成專案的開發,並且在這過程中都有成長。

前言

專案總有做完的時候,就是看有沒有做對,做成。

除了關注專案本身之外,還需要關注一下人,比如如何讓自己自身成長、如何讓其他人成長。

如何獨立去進行專案的開發?

我們們的目標肯定是希望把這個專案做成。

面對的主要問題

  1. 知道要做什麼、能不能做、什麼時候截止
  2. 知道要怎麼去做
  3. 開發
  4. 交付

1. 知道要做什麼、能不能做、什麼時候截止

  • 對需求: 一定要知道產品想做什麼東西,不然到時候做出來的東西不是產品想要的。
  • 調研:這個需求能不能實現,不能實現我們們就不用做了。
  • 確定一下交付時間

2. 知道要怎麼去做

  • 熟悉開發流程
  • 技術選型、定方案
  • 任務拆分、排期

3. 開發

  • 按照排期進行專案的開發,跟其他夥伴配合,解決遇到的問題,完成功能模組的開發。

  • 如果用的是新的技術棧,請提前做好基礎知識儲備。

  • 自己難以解決的問題,可及時向他人求助。

4. 交付

  • 把需要的東西交付給需求方,等待需求方驗收。

怎麼做得更好?

3 個階段 1 個總結:開始階段、執行階段、收尾階段,覆盤總結

開始階段

  • 充分了解需求,明白產品到底想要做什麼。補充需求,可能會出現產品邏輯功能缺失的情況,儘早提出來,避免做到最後了才發現產品邏輯不完善

  • 精細的任務拆分,最好是能拆分到一個任務一天(這樣對專案有多大的工作量更清楚,更易於把控進度)。排期不要算上加班的時間,按正常的工時去計算。

  • 明確交付產物、交付標準和截止時間 (知道什麼時候交付及交付什麼東西,這樣才能保證交付的東西是完整的,準時的)。最好整理一個交付的checklist,和一個交付檢驗的流程文件。

執行階段

  • 當日事當日畢 (保證進度)

  • 及時溝通,儘早暴露風險 (這樣大家可以一起幫忙把風險解決掉,保證進度)

  • 強化解決問題的能力 (保證進度),特別是debug的能力。

  • 不確定的問題,一定及時溝通 (保證進度和質量,避免做出來的東西與產品想要的不符合)

  • 做專案的過程中,可以多思考一下當前專案開發流程上有什麼不足,可以如何去做調整,然後帶著解決方案去找專案負責人

  • 新增程式碼註釋或者開發文件。比如如何開發、除錯、測試及上線。方便後續開發和維護

  • 深入思考一下專案的原始需求,當前專案開發完成之後,是不是可以解決之前要解決的問題,有沒有更好的方案。

收尾階段

  • 自測(保證提測質量):交付前根據 checklist 檢查一下要交付的東西是否完整、是否達到交付標準。

覆盤總結

  • 想一想,之前開發專案的時候哪裡被卡住了,如何提升自己的開發效率。(比如說下次再有同樣的專案,如何縮短專案的開發時間。)

  • 流程上是否有待完善的東西,以提高團隊的效率、提高整體開發的質量。

  • 多從其他人的角度去思考問題,看看如何配合起來更順暢,效率更高,條件允許的情況下,可以協助他人解決問題,提高自己的影響力。

  • 總結一下目前專案的優勢和不足,提取經驗複用到下一個專案中,能落成文章或者跟大家分享更好。

** 核心點:提高自身能力和影響力。**

如何帶著大家去進行專案的開發?

面對的主要問題(從業務介面人的角度)

  • 知道專案大的目標是什麼、交付什麼東西

  • 要讓大家知道各自都需要做什麼

  • 技術選型、方案定製、定製開發流程及規範

  • 資源協調(跨部門協作需要進行資源的溝通協調)

  • 處理風險及把控進度(解決開發過程中遇到的問題)

  • 成果檢驗(保證交付質量)

如何去做(僅供參考)?

3 個階段 1 個總結:開始階段、執行階段、收尾階段,覆盤總結

開始階段

  • 充分了解業務,從業務的角度,和產品經理探討需求的合理性,發表自己的看法和見解。

  • 根據需求,分析一下專案的重點或者難點,定製一下解決方案。有必要的話出一個小demo,做技術預演。

  • 定一下專案的架構,進行模組及任務劃分。

  • 梳理一下專案開發中需要依賴的外部資源,提前溝通協調。

  • 定製開發流程和規範

執行階段

  • 每天下班之前同步一下開發進度及問題點,協助解決重點難點問題,當日問題儘量當日解決。如果是緊急專案,小組內進度同步完成之後,整理彙總到專案負責人或者領導處。

  • 拉通認知,隨時保持大家對專案,需求的理解是一致的。

  • 保持良好的溝通氛圍,可提高開發效率或者及時發現問題。

  • 管理風險:風險接受(知道這個風險並且能接受)、風險規避(通過其他方式規避這個風險)、風險控制(採用策略緩解這個風險帶來的影響)。

  • 解決衝突:人力衝突、優先順序衝突、技術見解衝突等。能自行解決的就解決,解決不了的,可讓第三方介入解決(比如其他同事或者領導)。

  • 重要的技術方案及重點問題記錄,統一形成文件,讓大家都能看到。

  • 協助解決問題以引導為主,幫助其他成員提升解決問題的能力。

收尾階段

整合專案,並進行自測/預演,確認沒有問題之後再交付。

覆盤總結

專案交付之後,自己先進行總結,然後帶著大家一起進行復盤。不用太正式,每個人都有發言的機會,暢所欲言(最好是給大家時間去想,寫紙上,然後挨個發言)。最後總結,提取經驗,形成文件一起歸檔。

自我總結的思考:

  • 專案是否達到預期的效果?如果沒有,原因是什麼。
  • 團隊開發效率和配合的默契程度如何?是否還能再提升?
  • 開發流程是否完善?有沒有需要補充、改善的地方?
  • 團隊成員的收穫是什麼?對於他們來說是和有收穫和成長?

** 核心點:整體規劃、專案管理、團隊成長、業務理解**

相關文章