雑な発想を活かすチーム作り

インフラストラクチャー部の成田(@mirakui)です。インフラストラクチャー部は、クックパッドで扱っている全サービスのサーバを設計・構築し、運用しているチームです。2015年3月現在、6人のメンバーで運用をしています。

さて、この運用というのは外から見ていると保守的な仕事に思えるかもしれませんが、その実、とてもクリエイティブな仕事です。クックパッドのサービスは一日平均で10回以上デプロイされており、アクセスも日々増え続け、状況は刻一刻と変化しています。今日動いているサーバ構成が、一年後に通用するとは限らないわけです。そんな変化に追従するためには、サーバを常に改善していかなければなりませんし、チームにも柔軟な発想が求められます。

「さあブレストしよう」→アイデア出ない問題

さあ業務を改善しよう、と意気込んでブレインストーミングを開いても、なかなか十分なアイデアが出きらないのはよくある話です。

一方で、「このサーバ、いけてないよね」「あの新しいミドルウェア入れてみたい」といったようなアイデアの種は、ランチや飲み会の時に日常会話でよく出てきます。こういった雑談の中には、仕事のアイデアが隠されています。

こうした柔軟な発想を生かし、業務をクリエイティブにしていくためのツールとして、私達のチームでは「雑」の概念を取り入れています。

雑な発言

id:bash0C7 さんのエントリでは、雑の概念を的確に説明しています。

今回述べたい「雑に発言する」とは、きっちりと推敲したり計画立ててやってるわけじゃないおおざっぱな、しかしそれを契機に話を膨らませたり、世界観の一端を伝えたりできるような、適当に役に立つライトウェイトな発言という事です。
雑に発言をしよう - id:bash0C7の進捗

私達の言う雑とはまさにこの事を指しています。決して低品質な仕事をしたり、誰かに迷惑をかけたりすることを指しているわけではありません。日頃から発言のハードルが低く、気軽に意見できることが重要なのです。

同エントリの本文で参照されている記事、月間38億PVを支える“チームの力”とはでは、「マクドナルド理論」について述べられています。

「マクドナルド理論」て知ってます? みんなでランチの行き先を考えているとき、「マクドナルドに行こう」と誰かが言うと、みんなが一斉に否決して、別の案が次々に出てくるというセオリーなんですが(笑)。つまり的外れな意見とか最悪のアイデアが自由に言える雰囲気が重要ってこと。それによって議論やアイデアが形になっていくわけです。
月間38億PVを支える“チームの力”とは [片桐孝憲] | ISSUES | WORKSIGHT

マクドナルド理論は雑を特徴的に捉えた考え方の一つです。まず、雑に発言をしてみる。そこから新しい発想が生まれていくのです。

図: マクドナルド理論の実践

zatsu リポジトリ

雑な発言は、雑すぎて記憶にとどまらず、すぐに忘れてしまいがちという問題点があります。特に、精神的に自由な状態の時(=酔っ払ってる時)に出たせっかくのアイデアが、翌日には覚えていないということがチームで問題になっていました。

そこで、私達のチームでは、GitHub Enterprise 上に「zatsu」というリポジトリを用意しました。このリポジトリでは特にファイルは管理しておらず、issues 専用のリポジトリです。

この zatsu リポジトリは、自由な状態の時や、日常の中で思いついたアイデアを issue として投稿する場です。

そして、精神的に冷静な状態の時(=酔っ払ってない時)に見返すことで、それが的外れだったのか、タスクにするべきかどうかを議論することができます。

f:id:mirakui:20150325201710p:plain
図: infra/zatsu リポジトリの様子

雑とは夢

雑とは、夢を語るためのスキームでもあります。

最高のサーバインフラとは、快適にサービスを提供でき、コストは低く抑え、障害が起こらず、メンテナンスフリーでセキュリティ的にも万全といったものになると思います。当然ですが、そんなものは存在しません。しかし、それを目指し、少しでもそれに近づくことはできます。

そのためには、自分たちの進むべき道とは何か、理想の状態とは何かについて、常に語り合えるチームでなくてはなりません。リーダーがビジョンを指し示すのはチームビルディングの基本ですが、全員が同じ方向を向き、納得をした上で仕事を進めていくためには、全員が自分たちの頭で何をやるべきかを考えることが大切です。

f:id:mirakui:20150325201757p:plain
図: 夢

良い雑、悪い雑

もちろん、発想の柔軟さは大切ですが、責任は伴います。いくら雑だからといっても、最終的にはタスクに落とし込まれ、自分たちでやらなければならないからです。実現できる技術力・行動力に裏付けされています。

勘違いしてはならないのは、インフラエンジニアには雑なオペレーションは許されないということです。サービスを守る立場の私達が、行動まで雑になってしまうことは絶対にあってはなりません。柔軟に発想しつつ、誠実に行動する必要があります。

雑さを許容するためには、チームメンバー同士の信頼関係と、互いの技術力に対するリスペクト、そしてユーザファーストの徹底が必須です。

図: 雑に発言し、誠実に行動する

雑アイデアをタスクへ

雑な発言を許容することは、常に志向を発散させることに他なりません。業務プロセスとして雑さを扱うためには、これを然るべきタイミングでうまく収束させる必要があります。

普段は issue で議論をし、ある程度発散できたタイミングでミーティングを開催し、合意形成をとります。そして、具体的な業務のタスクとして個人にアサインします。この段階で、雑だったアイデアは雑ではなくなり、責任をもってやり遂げなければならないタスクに変化します。このようにして、「夢」だった状態を少しずつ現実にしていけるのです。

おわりに

雑さを許容することで、発言のハードルが下がり、結果として変化に強いチームを作る方法を紹介しました。雑な発言が許容されつつ阿吽の呼吸で仕事が的確に進んでいくチームは、とても気持ちが良いものです。

インフラストラクチャー部では、柔軟に発想し、責任を持って理想に向かっていけるエンジニアを募集しています。

インフラエンジニア | クックパッド株式会社 採用情報