ホットペッパービューティー開発チームが目指すところ
ホットペッパービューティーで開発を担当している須藤です。
ホットペッパービューティーは近年著しい成長を見せている、リクルートライフスタイルの主力サービスの一つです。
当然システムもエンジニアの体制も大規模で、開発チームはエンジニアだけで100名を超えています。 しかし、その急激な成長故に、いろんなところで歪みが生まれているのもまた事実です。
ホットペッパービューティー開発チームは、「開発スピードがビジネス要求に遅れを取ることがあってはいけない」を合言葉に、様々な改善活動を行っています。
ホットペッパービューティー開発チームのインセプションデッキから引用
今日はそんな取り組みの中から、私のチームで実施しているものをいくつか紹介したいと思います。
チームビルディングで大切にしていること
最初に、私がチームビルディングする際に、常にチームに意識してもらうよう心がけている価値観をお話します。
常に優先順位を意識すること
どうやら世の中は「やった方がいいこと」で溢れています。
【今】やるべきことは何なのか?常に意識する必要があります。
※「何をやらないか」を大切にしているといいかえてもいいかもしれません。
スモールステップにすること
タスクも問題もソースコードも、ありとあらゆるものは小さく分解して対応します。
強大な敵を前に、闇雲に戦うのは賢明ではありません。
少しずつでいいのです。確実に終わらせることを重要視します。
誰かの問題はチームの問題であること
あなただけがうまくいくことはあり得ないし、私だけうまくいくこともあり得ません。
あなたの問題は私の問題でもあるし、私の問題はあなたの問題でもあります。
それはつまりチームで戦い、取り組むべき「私達の」問題だということです。
だからこそ、チームの成功が自分自身の成功になるのです。
全ての取り組みは、上記の価値観に基づいて実施しています。
インセプションデッキ
新しいプロジェクトが立ち上がる際は、インセプションデッキを書くことにしています。
これはエンジニアだけでなく、ディレクターをはじめとするビジネスサイドの人にも参加してもらいながら作ります。
インセプションデッキの素晴らしいところは、シンプルでありながら色々な立場の人たちがビジョンを共有できるところにあります。
単なるシステムの完成やリリースを目指すのではなく、目指すビジネスゴールを共有することで、よりプロダクトの本質的な価値へエンジニアが能動的にコミットできるようになります。
問題が発生した時は、どうしても工数や納期に囚われ「できる/できない」を語りがちですが、共通認識が出来上がっていれば、「どうすればできるか?」を建設的に考えられるようになってきます。
『アジャイルサムライ』で紹介されている、インセプションデッキ のテンプレート
オープンなプラットフォーム
ホットペッパービューティーでは、JIRA/Confluence/HipChatといったAtlassianツールを利用しています。
これらのツールがあることで、コミュニケーションコストの大幅な削減、さらには担当範囲を超えたコラボレーションを誘発します。
議論・検討したいことがあったら、まずはアウトプットすることを心がけています。
未完成の状態であってもどんどんアウトプットしていくと、周りの人がそれに対し意見をしたりアドバイスして、どんどんアイデアがブラッシュアップされていきます。
情報はアウトプットされているので必要な人は探すだけで済みますし、もしなくても誰かが種を撒けば皆で育てていくことができます。
タスクもJIRAチケットで見える化されているので、誰が何をやっているのか一目で分かります。
もちろんステークホルダーへ最低限の報告等は行いますが、基本的に管理は最小限でチームが自律的に動けるようにすることを目指しています。
WBSからバックログへ、ふりかえりで成長を
進捗管理はこれまでWBSとガントチャートで管理していました。
工数ベースで要員配置し、リソース不足のところに人を投入する管理手法が中心でした。
しかし、それは却ってオーバーヘッドが大きかったり、進捗どころか品質低下の恐れすらあります。
今は、バックログに優先順位をつけスプリント(一定の期間)単位でチェックすることで「いつまでに何を終わらせるか」を重要視するようにしています。
ある程度固定化された小〜中規模チームで、経験と学習でチームが成長していくことを重要視しています。
そのためにも定期的に、できるだけ短い単位でふりかえりを行うようにしています。
まめに行うことで「今感じてること」を共有し、学習機会とすることでチームの成長につながっています。
チームはどう変わったか
チームの視野が確実に広がってきました。
ふりかえりや日々のHipChatの雑談でさえ、「プロダクトをもっといいものにするにはどうしたらいいか?」が健全に議論され、かつ、それを実際にやろう、早くやろう、やりたいという流れになることばかりです。
(システム的なところだけでなく、ビジネス的な観点でも!)
問題発生時には担当範囲を越えて、全員が一丸となって取り組みます。
最近では「アジャイル」なんて言葉が流行っているようですが(笑)、それはつまり「変化に適応し、改善/成長していく(ができる状態にある)こと」だと私は考えています。
チームの変化を見ていると、これがアジャイルになってきているってことなのかなぁ、と感じます。
他にも様々な取り組みを行っていますが、その一部をご紹介させていただきました。
少しでも誰かの参考になれば幸いです。
須藤 昂司
(美容クライアント開発チーム)
PaDDエンジニア。認定スクラムマスター。もっと楽しく仕事をする「PaDD」こと「Passion Driven Development」を心情に、自分が今いる現場を少しでも改善しようと日々奮闘してます。