僕はプログラマでありたいよ

こんにちはあたらしいじぶん

【読了】Team Geek

Team Geek ―Googleのギークたちはいかにしてチームを作るのか

Team Geek ―Googleのギークたちはいかにしてチームを作るのか

暦の上ではディセンバー、でもハートはサバイバー。

あまちゃんを見たことがないけど、今から見たら負けだと思いながら、久しぶりにブログを書きます。

なぜこの本を読んだのか

なんとなくインターネッツを徘徊していたら目に止まったのと、そもそもどんな内容かよくわかっていなかったけど、角さん訳ってところできっと面白いだろうと思って勢いで買った。(角さんには実際にお会いしたことはない)

どんな本?

googleで働いているBraian Fitzpatrick(ブライアン・W・フィッツパトリック)という方と、Ben Collins-Sussman(ベン・コリンス・サスマン)という方が、これまで会社組織、OSS(主にSubversion)などのコミュニティの中で、様々な体験・経験を元に「人とうまくやっていく」ための振る舞い方や考え方を、体験談を踏まえ解説している。プロジェクトを成功させるためには優れたコードを書くだけじゃだめ(もちろん優れたコードは素晴らしい)で、メンバー全員で協力する必要があるから、なんかうまくやっていこうよって話。

よかったところ

各章ともになるほどなーって思うことはあったけど以下のあたりが参考になった。

HRT (Humility, Respect, Trust)

謙虚(Humility)・尊敬(Respect)・信頼(Trust)の頭文字を取ってHRT。こんな単語を聞くと、自己啓発的な何かを想像して、嫌悪感や拒否感を覚える。僕たちはエンジニアなのだから、素晴らしいプロダクトを作ることが重要だし、優れたプログラムを書くことに集中したいと考えている(はず)。本書では、HRTはそんな胡散臭い自己啓発的なものではなくて、本当に成し遂げたいもののために必要だと言っている。人間関係の力を過小評価せず、人と働くということにきちんと向き合い、僕達が成し遂げたい目標に向かって、「うまいこと」やっていくためのHRTという考え方や、それにそった行動が大切なんだと。「うまいこと」というなんかずる賢い感じがするが、本書を読むと、そういうことではなく、気持ちよく働くためにHRTを使ってよろしくやっていこうよと言っていることがわかる。だから、嫌悪感や拒否感は一旦置いといて、まっさらな気持ちで一読すると良いと思う。

船にはキャプテンが必要

どういうリーダーであるべきか、良いリーダー、悪いリーダー、アンチバターン、良いパターンという内容。
サーバントリーダー」という言葉が挙げられている。サーバント、すなわち執事・召使いということなんだけど、リーダー、マネージャの仕事は、チームを「管理」するのではなく、執事や召使のように(いいすぎ?)チームに奉仕することだということらしい。もちろん奴隷のように働くってわけではなくて、プロジェクトがゴールに向かうために、メンバーが気持ちよく仕事できるように、技術的な側面と人間関係的な側面の両方を宜しく解決するって感じらしい。
マネージャになりたいエンジニアって僕の周りには少なくて、生涯現役!できればマネージメントなんて煩わしいものに関わらずに、良いプロダクトを作ったり、コードを書き続けていきたいと思っているエンジニアは多い。(別にそれ自体は悪いわけではないし、むしろ本能に忠実で良いし、僕もそっち側だとおもってる)
でもそういう人も意図せずにリーダーになったり、マネージャになってしまったり、またそういう能力が求められる場面に出くわしたりすることが往々にしてあるものなので、そういった状況になった時のために読んでおくと良いのではなかろうか。

組織的操作の技法

組織の中でうまく立ち振る舞って、自分たちが成し遂げたいことを達成するためのテクニックが書かれている。
こんなことを書くとずる賢い感じがするかもしれない。けど、自分の腕一本で行きていけるような天才ハッカーならともかく、そうではなく、かつ会社組織の中で少なくとも人との関わりの中で仕事をする人であれば、自分が気持ちよく働くために必要な労力であり、努力なんだと僕は思ってる。
本書では、少ししか紹介されていないが「昇進」というものについても触れられている。「昇進したら給料はあがるかもしれないけど、めんどくさい仕事がふえるだけでしょ?今の給料でそこそこ満足しているし、だったら昇進なんかしないで、今のまま仕事できればいいよ」という人は少なからずいるんじゃないだろうか?でもその仕事はいつまで続けることが出来るのだろうか?移動や組織変更みたいな外的要因によって簡単に職や立場が危うくなる。だから自分の運命がコントロールできるポジションにつく必要があるという内容。
僕は自分が働きやすい環境を作るのは自分にしかできないと思っている。待っていてもそんな環境は手に入らない。やりたいことだってそう。やりたいことがないなら、楽しそうな話を持ちかけてもらえるようにするにはどうしたらいいだろうか。最近はそうでもないけど、今の会社に入社した当初はそんなことをよく考えていた。結果的に他の人に力を借りることになるかもしれないけど、自分で考え動き出すことが大切だと考えている。
ちょっと長くなってしまったが、やりたいことができないとか、楽しく働けてない、上司とそりが合わないとかそんなような不満を抱えている人には本章はおすすめできると思う。

まとめ

結構当たり前的な内容だったり、既に実践というか取り組んでいる内容もあったが、総じて良かった。勉強になった。
もちろん全部が全部できるわけではないし、やり切るのは正直難しかったり、今の会社やチームでは当てはまらないこともあった。
OSSみたいなコミュニティで活動したことがない僕だけど、会社組織というコミュニティには(おそらく)あと数十年は属するはずなので、その中で人と働く上での考え方や行動の仕方はエンジニアでなくとも、マネージャでなくとも参考になるし、勉強になることが多いのではないかと思う。なので、タイトルに騙されず?に、少なからず人と働く機会がある人は、一度読んでみても良いのではないでしょうか?とりあえず僕はエンジニア以外のマネージャ職の人に薦めてみようと思ってる。