租「隊友」的發案經驗

Published on:

大致上寫一下最近外包給美國 firm 的幾個重點。(就先不說在做什麼東西了....)

學到很多做事方法。其實很多方法以前就知道。但沒想到對方真的可以做到「理想」的境界。

  1. 漂亮的合約。以小時計費,但帳單用週計算。先用信用卡,付兩週訂金。接著用信用卡每週刷帳單。沒繳上一期就停工。
  2. 對方一週只工作四天,第五天是他們自己的。
  3. 先談 User Story,每天照 User Story 進行(可以排優先權)。
  4. 每天 run daily standup,跟客戶確認今天他們要做什麼。(所以,我是真的被逼每天開 standup ....)
  5. 每週開一次半小時的 retrospective meeting。檢討上一週 blocker,覺得他們做太慢,也可以抱怨。
  6. 認真的 code review。pull request 上面滿滿他們同儕的回饋,客戶也可以寫。技術客戶可以直接在上面講他偏好的 code convention 與希望設計架構。

技術客戶要每天去 github 按讚表示驗收。
純 product owner 要每天去 staging 看成果,然後在 trello 上驗收。

  1. 每一條 User Story 都 BDD 與 TDD。code : test 是 1: 2.3。( 還做 BDD 真是讓我很驚訝)

我覺得這種架構最大的特點就是,讓客戶尊重外包公司。

以前我也 run 外包公司,每兩、三天能讓客戶在 redmine ticket 上驗收幾條 user story 並簽名表示合格,每週大概出一次報告,我們這週做了哪些東西。這樣雙方已經算很勤勞了。

同業聽到的,多的是客戶不想參與開發過程,也不願意聽細節解說,RD 不想給對方看現在進度。結果幾個禮拜做下去,最後雙方做到翻臉的多的是。應該說,我隱約覺得業界大概極高比例都有這種情形....

他們這樣工作流程這樣設計的中心哲學是:

  1. 客戶是租這個團隊「組 team」。大家都要對 final product 要有「共同責任感」。
  2. 接案公司負責提供高級人才,盡力 deliver,賣的是「時間」,不是「product」
  3. 利用強制性的 daily standup,逼「業主」本身要負責任。而不是把東西丟了都不給方向也不給 feedback,最後再來怪東西做錯。然後做錯的責任又在「接案方」上,怎麼說都不合理。
  4. 利用 daily standup 去確認做的東西,developer 有沒有理解錯誤。
  5. retrospective meeting 可以去檢討流程,溝通模式。
  6. 計價是小時,帳單是每週。大家不合意的話,下週就直接解約停工了...解約沒有違約金。但是遲交錢有罰款。
  7. 業主不負責任的話,反正是按照時間再算,不負責任的後果就是帳單金額一直疊上去。

不過,這樣也可以保證業主亂許願的自由。反正個人許願個人擔。