yaotti's diary

Software is Eating the World

技術/組織としてどうスケールするか at GitHub

会社をスケールさせていくために組織面,技術面で何を行ってきたか.以下簡単なまとめ

組織面

従業員をよりhappyにするために,面白い仕組みを導入している.ミーティングがない,オフィスに来なくても良い.やりとりはpull requestとcampfire.
他にも組織として強くなるために,個人に依存しすぎない(知識共有を促進する),internal talk(tech talkみたいなのかな?それとも普通の会話?)は将来の従業員のために全て記録する*1,など.

技術面

  • 自動化可能なことを手作業でやり続けることによるコストは,手間だけではない.新規メンバーに学習コストが発生することになる.
  • masterブランチは常にデプロイ可能な状態に保ち,1日に5~30回デプロイを行なっている.
  • 意味のあるメトリクスをグラフ化しよう.全体でのレスポンスタイム平均がXXXms,というのは意味がない.
  • リリース以降今までインフラがどう変遷してきたか.ナイーブな実装だとストレージを無駄遣いしていたので,net-shardというCoWっぽい形で節約できるように変えた.


最後の"Continually refine your process + workflow"は心に留めておきたい.