引き続き「何故クックパッドのサービス開発は日々進化しているのか」 を聞いたので内容を共有します。
profile
- 庄司嘉織@クックパッド
- 部長だけどプログラマ
- スライド
cookpad
- クックパッドはクックパッドだけじゃなくて新規事業もやってますよを覚えておいて
- Ruby2.0 Rails3.2 : 絶賛Rails4.0.1へ移行作業中
- 超絶大規模(スライド参照)
- サービス開発40+ / インフラ部5 / 技術部 10+
- cookpad本体いじるメンバーは20名程度
- Opsはインフラ部の部長のスライドを参照
- 技術部コミットメントCI10分以内
- ユーザを向いたものづくり(スライド)
- ほぼ全員デブサミ来てない。2/14バレンタインデーの前日は一番アクセスが多い
サービス開発
- Chankoの紹介。cookpadのサービス開発を端的にあらわしているgem。
- 金曜リリース禁止なので4日でmergeされたコミットが167ある
- Github。DBスキーマ変更もプルリクエストで、設計もissuesで。
- デザイナーもGithubで
- LGTM: looks good to me
deploy
- 時間帯9:30-17:00の間 休日の前日は基本なし
- インフラがデプロイロックを開発者にお願いする。インフラが権威的にならないようにする
ユーザーサポート
- ユーザーサポートもGithubで
- hipchat通知&エンジニアが見やすい場所
- サポートの人はエンジニアに投げた後の進捗が気になるのでGithub利用オススメ
- 元々違うチケット管理システムをサポートは使用していた。エンジニアさんに迷惑かけちゃいけない的な文化まずい
- 正しいと思ったら勝手に行動して良い。自分で文化を作れる
文化
- DevOps社内ではそれほど意識してなくて後付っぽい感じ
- 立場の違いに応じて社員ひとりひとりにユーザーがいる
- エンジニアの文化が良いと思うなら他の人達にも取り入れてもらう
- クックパッドのエンジニアは社外の開発者にも貢献することが求められている
- エンジニアの評価基準の一つになっている
- 文化を作るために気をつける:ルールを作らない。ルールにしない
- それが正しいと思ったら行動する
- いいだしっぺがやるから問題ない
- 文化が共有されていればそれでまわる
- It’s easier to ask forgiveness than it is to get permission.
- 許可求めるより良いと思ったらやった方が早い
- cobol開発者の言葉
- 文化を共有し信頼し実行