#分享 Qcon北京2019:10倍速原則對工程生產力建設的方向性影響
上一篇 Qcon 分享在此:https://www.dcard.tw/f/softwareengineer/p/231307539-#分享-Qcon北京2019:智能優化-&-A/B-測試---實驗驅動用戶增長的理論與技術實踐
投影片:https://static001.geekbang.org/con/38/pdf/2908614170/file/10倍速原则对工程生产力建设的方向性影响-乔梁.pdf
講者喬梁是騰訊的高級管顧
一開始講者先給個動機:
facebook, amazon 之所以可以做那麼多個版本去實驗
是因為它的團隊夠有效率
才能讓產品的發布週期夠短、做到真正的持續交付!

那傳統都怎麼發布產品的呢?
waterfall 囉
一年十二次
過程中有大量的等待...

而且沒有留任何 buffer
幾乎都會 delay

騰訊的做法是 1-1-1 原則
每天一個 alpha 版
每周一個 RC
每月一個 Release
看起來有點難實行,尤其時團隊一大的時候
真的能做到每天都能 merge 出一個 alpha 版嗎?
要注意 alpha 版要是可以 run 的誒
騰訊的解法是:
一個項目會有多個小組去分工
下班前的 merge 發現哪個小組出 bug,該小組的 pr 就會被拒絕
下次小組要 merge 回 master 的時候,code 早就已經人事全非了
會增加他們解 conflict 的時間
這樣的制度下會讓每個 team 都特別要求自己的代碼質量
最後專案會很容易維護而且如期交付


每天都要 alpha 喔~

看到這個就讓我想到 ig, amazon 的 engineer
第一個月都不工作
就是專心跟你強調 code 的 readability, merge 的流程和要求這些
是很敢投資公司的工程文化的
讓我想到我 on board 的時候完全沒有任何這方面的介紹RRR


----------------------------------------------------------------------------------------------------------------------------------------
我們 team 都是寫 python
聽完研討會之後就是用 npm 的 husky 在 git commit 前用 hook 的方式
把 python 的 pylint, mypy, yapf, pytest 都掛進去
沒過就不能 commit
大大們也分享一下自己公司的做法吧~
