はじめに
最近、プログラマーとして2年も経とうかという時期なのですが「エンジニアにとって理想なチームとは何か?」ということに興味を持ちだしました。
で、良い本はないかと調べたところ、みんながみんなオススメする「Team Geek」という本を読んで、やっぱり素晴らしかったので、それの共有です。
どんな本なの?
Googleに所属するエンジニアが「エンジニアの理想な組織はこんなだぜ!その組織をつくる理想のエンジニアはこんなだぜ!」というのを書いてる本です。
書かれてる順番としては、大まかに抜粋するとこんな感じ。
- エンジニアの理想のマインドセット
- そんなエンジニアが働く理想のチーム
- そんなチームの理想のリーダー
- でも時にはどうしようもない人もいるから、その場合はこう対処しよう
- …(略)
この本が良いところは、エンジニアという職業についてる人にとってはすごい実用的(?)なところ。
あるべき姿、アンチパターン、対処法… などが実例を交えて紹介されています。
「あーわかる」「あー俺これできてないわー」みたいな気づきを、本の内容と普段の仕事を比較してサッと理解することができます。
また「どうしたら良いのか」も普段の仕事に当てはめれるように書かれてるから、これまたサッと試してみることができます。
そんな感じなので、この本を読むだけで「よし!普段の業務に活かしてみよう!」と思えるところが多いのです。
特に印象に残ったところ
「2章 素晴らしいチーム文化を作る」
この中で特に印象に残ったのは2章です。
この章は、チームの文化やミッションについて書かれてたりする章なんですが、それの重要性が改めてわかりました。
今までは「ミッションとか勝手に作ってくれよー。そんなの現場で作ってる側には関係ないしさ〜」と思ってました。
ところが改めて「自分が仕事をする上で重要に思ってることは何か」というのを考えた時に、やっぱり根っこにあるのは、文化やミッションだったんですね。
この章を読んで、そのことに改めて気づいて「あぁチームというのは、自分の仕事で大きいウェイトを占めているんだなぁ。こりゃ真面目に考えないとなぁ」と思ったわけです。
「3章 船にはキャプテンが必要」
続いて印象に残ったのは3章です。
この章は、エンジニアリーダーというポジションについて書かれている章です。
これを読むまでは「リーダー(マネージャ)なんて、みんなから責められるし、自分はコード書けないし、絶対やりたくないポジションだよなー」と思ってました。
ただ、この章(というかこの本)を読むと、そこまで避けるべきポジションでは無いかもしれないと思うようになりました。
というのも、以下の2つの「気づき」が有ったからです。
- 良いリーダーとしての心構えは、実際にリーダーであるに関わらず、チームを良い方向に導く
- 良いプロダクトを作るためにできることは、必ずしもコードを書くだけではない
1つめについては、これまではリーダーはあくまで完璧超人だと思ってたんですが、当然そんなことは無いです。
リーダーを支えてチームを良い方向に進めるためには、リーダーの立場を理解しなくてはいけない。
2つめについては、もしかしたら自分はコードを書くだけでなく、リーダーというポジションの方が、全体的な利益としてはあがるのではないか?
この章を読んでそんなことを思い「リーダーというのをやってみるのも有りなのでは?」と考えるようになりました。
おわりに
印象に残った章をいくつか紹介しましたが、正直「全部の章が面白いし、参考になります!エンジニアなら絶対読んでください!」と自身を持ってオススメできます!
この本には、ホントの理想のエンジニアが書かれているので、それと自分を対比させて「あー俺これ出来てないなー」というのを認識することができます。
(もちろん、そこから自分を見つめて成長させることも!)
エンジニアという職業は、もちろんコーディングやシステム設計のスキルも必要ですが、それと同じく(それ以上に?)マインドやチームが大事。
そんなことを気づかせてくれる本です。