phpmatsuri2012 - 最先端チーム開発
DESCRIPTION
福岡で開催されたPHP matsuri 2012 で、最先端チーム開発について発表してきましたTRANSCRIPT
最先端チーム開発公開用
PHPMatsuri 20122012-11-03
KLab 株式会社 黒井春人
12年11月25日日曜日
自己紹介
Twitter: @halt / github.com/ha1t
PHPer (10年くらい)
ソーシャルゲーム開発(3年くらい)
CandyCane、プラグイン作ってます
KLab株式会社(「くらぶ」と読む)で好き勝手やらせてもらってます12年11月25日日曜日
開発手法に凝ってます
12年11月25日日曜日
私の所属するチームの話をしよう
ソーシャルゲーム開発は短期集中開発なので、案件間の人材の移動や増減が激しいため、効率良い情報共有が必要になる
同時に進行する案件がたくさんあるため、少数精鋭ではカバーできない
特定の人に依存しない開発体制が必要
12年11月25日日曜日
過去に起きたBadな出来事
「自作したオレオレフレームワークの方が早く
開発できる!」->ドキュメントがないまま案件途
中で転職していき、誰も把握できない状態に
社内の重要なサーバが死んだ! -> 構築した人間
がかなり先進的なテクノロジーを使っており、そ
の人は退職しており復帰できず0から作り直し
12年11月25日日曜日
チームでやってきた事
Jenkins
github
group programming
お菓子駆動開発
12年11月25日日曜日
Jenkins
PHPコーディング規約のチェック
構文チェック
コードの重複チェック
ユニットテストのチェック
12年11月25日日曜日
Jenkins
自分たちが決めたレールの上をちゃんと走れているか常に確認する
ユニットテストを書けば書くほど少しづつ安定していく事を認識する
自分スタイルじゃなくてチームスタイル
12年11月25日日曜日
Jenkins
PHP関連の設定をまとめたjenkins-phpを使うと比較的簡単に導入できる
http://jenkins-php.org/
12年11月25日日曜日
github
Pull Request 方式がちゃんと回ればそのチームの情報共有速度は飛躍的に上がる
mergeされるコードの質を担保するという意味もあるが、他の人が書いた部分を把握してベストプラクティスを共有できる事が重要
12年11月25日日曜日
group programming
join.me という画面共有ツールを使う事で、ドライバー一人の画面を複数人で共有できる。
コーディングスタイルの共有から設計の相談、仕様の把握、新メンバーの雰囲気共有など、チーム全体の情報のsyncに使える
設計、意思合わせ、育成に便利
12年11月25日日曜日
group programming
12年11月25日日曜日
sweets driven development
みんな!難しい処理を実装している時はお菓子を食べると仕事が捗るぞ!
みんな!他のチームにお菓子を配ると喜ばれるぞ!
お菓子食べてるとなんだか楽しいぞ!
12年11月25日日曜日
sweets driven development
okasi!
12年11月25日日曜日
12年11月25日日曜日
そして時が経ち
新しく社外から入ったメンバーは一週間程度でフレームワークと主要機能の把握をし、二週間で既存メンバーと同じペースで仕事ができるように(自分たちも意味わからない)
ベストプラクティスが共有できた事でエラーやコードの問題が減った
12年11月25日日曜日
まとめJenkins先生にコードを見てもらおう
Pull Request開発はもはや常識
プロジェクト初期はグループプログラミングしよう
お菓子は気分転換と仲良くなるキッカケになるよ
12年11月25日日曜日
まとめ
PHPMatsuriでの開発、楽しいですよね?
楽しく働くという事を考えて仕事をしてみま
せんか?
12年11月25日日曜日
人生の中で一番長くあなたの隣にいる人が、会社の同僚です。
人生の中で一番長い時間を過ごす人と楽しく仕事をする事が、
人生を楽しく過ごす事になると思いませんか?
12年11月25日日曜日
KLab, 採用やってます
仙台、東京、大阪、福岡に事業所あります
福岡事業所すごい綺麗で良い所です
あなたと…働きたい!
12年11月25日日曜日