お茶漬けびより

"あなたに教わったことを、噛んでいるのですよ" 五等分の花嫁 7巻 「最後の試験が五月の場合」より

エンジニアのためのマネジメントキャリアパスを読んだ

最近エクストリームプログラミングを身に着けたい気持ちが高まっています。

どういう本か

プログラマーシステムエンジニア(自分はプログラマーの中にシステムエンジニアが含まれていると思っているけど)の人がテックリードやマネージャ、チームリーダー、経営幹部(CTO)へと登っていくために必要なスキルや心構えのようなことを各役職ごとに書かれています。主に管理職になるための参考書です。

新社会人の人や経験が浅い人などにはまだ必要ない本に思えるかもしれませんが、そんなことはありません。1章では自分が成長するためには上司とどう向き合っていけばいいか書かれていますし、2章ではメンターにとっての心構えですが、この話は後輩への指導に役立つと思います。3章のテックリードでは技術とビジネスにどう向き合っていくか、コミュニケーション能力はどうして必要なのかが読んでいると伝わってきます。

会社によってはテックリードやメンタリングのような制度はないでしょうが(実際自分のところではない)似たような仕組みはあるのではないでしょうか。ですので、今その立場でなくてもここでの内容を頭の片隅に置いておき仕事で意識することで、先行して身につけておくことができると思います。テックリードがなくてもプロジェクトマネージャ(リーダー)という役割はあると思うので3章のテックリードの話はきっと役立ちます。

感想

自分がこの本を読んで感じたことは、次の5つです。

  • 伝達するスキルが必要
  • チームで成果を最大にするために行動すること
  • 技術的なスキルとビジネス的なスキルを身につけること
  • プロジェクト管理のスキルを身につけること
  • 相手を理解し、相手に合わせて行動すること

「伝達するスキル」というのは、会話やプレゼンテーション、文書を書くスキルのことです。

「チームで成果を最大にするために行動すること」というのは、自分だけの生産性を高めるのではなく、メンバーの生産性が最大化するようにメンバーの様子に気を配ったり、作業が並行して進められるようにタスクを分割したり、面倒な作業を自動化するなどといったチームが円滑に作業を進められるように動くことです。ただサポートをするのではなく、プロジェクトが進むように優先順位やスケジュールの調整などのような点も気にしないといけません。

「技術的なスキルとビジネス的なスキルを身につけること」というのは、アーキテクチャを設計するためのスキル、ビジネスを実現するための技術への深い理解、ビジネス要件の理解というような能力が必要だということです。

「プロジェクト管理のスキルを身につけること」というのは、チームで成果を最大化することと被るのですが、大きなタスクを定期的に製品として提供(デリバリ)できるようにタスクを細かく分割し、それをメンバーで並行して作業できるように分担したり、作業の優先順位をつけてプロダクトの価値が最大化するように調整したり、客先や会社の要望を調整したりなどといった能力が必要だということです。

「相手を理解し、相手に合わせて行動すること」というのは、メンバーはもちろんのこと、客先の人や会社への報告などをプロジェクトが円滑に回るように行動するということです。

自分は最近プロジェクトマネージャを担当することが出てきたのですが、正直プロジェクト管理能力は足りていないと実感しており、特にスケジュールや見積もりというのがどうも苦手でアジャイルのような手法が世の中に浸透している中スケジュールや見積もりなんて当たりっこない、必要ないと半ば諦めていたのですが、この本を読んで当てることが大事なのではなく、今の進捗が全体のどのあたりなのか、あとどれぐらいかを大まかに把握するために必要ということが書いてあり、もう少し精度を上げるために努力しようと思い直しました(あとアジャイルでも見積もることはするので自分の考えは間違っていることは理解していました)。

また、将来自分がどうなりたいかを知るための本としても有効で、特にテックリードの章は自分が目指したい人物像(そこまではっきり目指しているかというと微妙ですが)に当てはまるのでこれを参考に行動していきたいと思いました。

後半の 6, 7, 8 章は自分にはまだ早いと感じたので飛ばしたので、また時間が経てば読み直そうと思います。

最後に管理職になるのは抵抗があったのですが、この本を読んで管理職になる機会があればなってみて、そのときに考えたらいいかなと思いました。