背筋を伸ばしてスタートアップするブログ

株式会社ペライチでCTOをやっています。

「エンジニアのためのマネジメントキャリアパス」は管理職以外にも読んでほしい良書だった

以前から気になっていた「エンジニアのためのマネジメントキャリアパス―テックリードからCTOまでマネジメントスキル向上ガイド」という本を読みました。

エンジニアのためのマネジメントキャリアパス ―テックリードからCTOまでマネジメントスキル向上ガイド

エンジニアのためのマネジメントキャリアパス ―テックリードからCTOまでマネジメントスキル向上ガイド

  • 作者: Camille Fournier,及川卓也(まえがき),武舎広幸,武舎るみ
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2018/09/26
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログ (1件) を見る

本書は、技術系マネージャーとそれを目指すエンジニアに向けて、IT業界の管理職に求められるスキルを解説する書籍です。インターンのメンターから始まり、テックリード、チームをまとめるエンジニアリングリード、複数のチームを管理する技術部長、経営にかかわるCTOやVPと立場が変わることによって求められる役割について、それぞれの職務を定義しながらくわしく説明します。

上記の書籍紹介にあるとおり大まかな内容としてはエンジニアの管理職に特化したキャリア本です。各役職においての職責、ぶつかる課題、うまく立ち回るためのコツなどが職務別に紹介されてありとても参考になりました。

ちなみに章立てとしてはこんな感じ。

  • 1章 マネジメントの基本
  • 2章 メンタリング
  • 3章 テックリード
  • 4章 人の管理
  • 5章 チームの管理
  • 6章 複数チームの管理
  • 7章 複数の管理者の管理
  • 8章 経営幹部
  • 9章 文化の構築

この記事では特に参考になった箇所にフォーカスして内容を紹介したいと思います。(参考になった箇所が多かったため分量が多めです)

テックリードについて

[テックリードとは](ソフトウェアの)開発チームに対する責任を担い、最低でも自身の職務時間の3割はチームと共にコードを書く作業に充てているリーダーのこと。

テックリードには誰より経験豊富でいいコードが書けるエンジニアを採用すべきという誤解があるが、それだけではだめ。実際には以下の役割をこなせる必要がある。

テックリードの役割

  • システムアーキテクトとビジネスアナリストとしての役割
    • プロジェクトを完遂しデリバリするには基幹システムのどこを改変すべきか、どの機能を構築すべきかを見極めること
    • 対象システム全体の構造の把握と、ソフトウェア設計スキルが必要
  • プロジェクトプランナーとしての役割
    • プロジェクト管理もテックリードにとって重要なスキルのひとつ
    • 作業をデリバリ可能な単位に大まかに分割する
    • チームメンバーの中でもとくに事情に通じている人からアドバイスをもらい優先順位の検討を行う
  • ソフトウェア開発者兼チームリーダーとしての役割
    • 自らプログラミング作業をこなしながらメンバーに課題を伝えたり作業を任せたりする任務を果たす
    • プロジェクトのリーダー役を果たしチーム全体の向上を図る。

優秀なテックリードとは

  • アーキテクチャを把握している
    • 製品のコアロジック、データの流れをしっかり理解している
  • チームプレイの大切さを心得ている
    • 難しい箇所、退屈な、面倒な修正作業の検討を買って出る
  • 技術的な意思決定を主導する
    • 自分が決断すること、より専門知識を持つメンバーに判断を委ねること、チーム全体で決断すべきことを見極める
  • コミュニケーションの達人である
    • チームの生産性のためにコミュニケーションに労力をつぎ込む

人の管理について

人的管理における基本職務

  • 直属の部下との関係構築
  • 定期的な1on1
  • キャリアアップや作業の進捗状況、改善領域、功績の報奨などに関するフィードバック
  • 各メンバーの研鑽を要する領域の見極めとその領域の能力の強化

短期間で良好な関係を築くために

  • 信頼構築のために質問をする

    • 褒められるとき人前でもいいか、1on1のほうがいいか
    • 重要なフィードバックの伝え方は書面がいいか、形式張らない口頭の方がいいか
    • あなたが不機嫌な時、悩んだりしている時は旗から見てどんな感じか。私が事前に知っておくべき事柄があるなら教えておいてほしいです。
    • 耐え難いと思う上司の振る舞いはありますか
    • キャリアアップの明確な目標がありますか
    • このチームに来てからなにか私に言っておきたいことができましたか。良いことでも悪いことでも
  • 部下に今後1ヶ月/2ヶ月/3ヶ月の計画を立てさせる

    • 明確な目標が立てられるほど部署やコードへの理解が進んでいる
    • 目標設定を支援する
  • 新人研修用のドキュメントを更新させる
    • これによりチームに対する理解を促す

チームの管理

「直属の部下がひとりか2人いる管理者」から「チーム全体の責任を負う管理者」は職位が1段階上がるだけだが職務内容がガラリと変わる。

  • 技術系管理者はチームの技術的な意思決定を主導しなければならない

    • 自らの技術力を維持するのも管理者の責任
  • チームの意思決定を主導するコツ

    • 「データ重視」の文化を根付かせる
    • 顧客に対する共感を深める
    • 将来を見据える
    • チームの意思決定やプロジェクトの結果を振り返る
    • プロセスと日程を振り返る

複数チームの管理

  • 例えば技術部長
  • 直属のテックリードが複数人いて、彼らが各自のチーム作業を進めることを支援しているような状況
  • 技術部長はコードを書く作業に必ずしも毎日携わらなくてよい
  • プロダクションコードを書かなくても現場の仕事に精通する方法
    • プログラミングの腕が鈍るのを予防する
    • コードレビューを(少なくとも「副レビュアー」として引き受ける)
  • 時間管理
    • 何はともあれ重要な仕事に照準を合わせる
    • 重要と緊急の違いを見極める

技術部長に求めるスキル

  • 純粋な管理スキル以外のものも必要
  • とくにチーム全体の「健全性」を見逃さない目を養う必要がある
  • チームの生産性や満足度の予測に役立つ質問
    • 会社から求められている自分の職務をきちんと把握しているか
    • 自分の職務を遂行する上で必要な機器やツールをもっているか
    • 毎日最高の仕事ができる機会を得られているか

複数管理者の管理

2階層以上離れた部下から情報を得るコツ

  • スキップレベルミーティング
    • 階層を飛び越えた部下とのミーティングを「スキップレベルミーティング」という。
    • 目的は「各チームの健全度や焦点の絞り方を把握すること」
    • 短時間の1on1を四半期に一回など行う
  • スキップレベルミーティングで聞く質問例
    • 今担当しているプロジェクトで最高(最悪)だと思う点は?
    • 自分のチームで最近とくにすばらしい働きをしているのは誰ですか
    • 何か君の直属の上司に関するフィードバックがありますか。うまく行っている事でも行っていない事でも構いません。
    • 今担当している製品にどんな改良ができると思いますか。
    • 我々が見落としているのではないかと思えるチャンスがあったら教えてください。
    • うちの部の業務活動は全体的に見てどうだと思いますか。改善、増強、削減できるところがあれば教えてください。
    • 我が社の経営戦略で、ピンと来ないところはありませんか。
    • 今あなたが持ち味を出し切れていない理由は何でしょうか。
    • この会社で働くことに満足していますか。
    • この会社で働くことに対する満足度を上げるため我々にできることは何でしょうか。

新任管理者の管理

  • 新任管理者のさまざまな兆候に注意し手助けする
    • 大変な職責を前にしてチームの管理を怠る
    • 前の職位の責任をチームの他のメンバーに託せずに現職の仕事と兼務してしまっている
    • 「権力」を手に入れたと思い込み厳しくチームをマイクロマネジメントし、すべて自分で決める

ベテラン管理者の管理

  • 本人がチームの文化に合う人間化どうかを見極める
    • 管理者はサブカルチャーを生み出す存在のため、文化的な相性の点で妥協は禁物
  • 自分の職責のうちどれをベテラン管理者に移譲するか検討する。新任管理者との違いは、マネジメントの基本的なことよりも上位の、戦略策定に大きく関わるものになる

経営幹部

技術系幹部を指す。CTO, VPoE, 技術本部長, 技術部門の統括者 etc

経営幹部の職務

  • 第一の仕事はリーダーを務めること
    • どの方向へ進むべきかを決め、会社に助言をする
  • 必要な素養
    • 情報が十分得られていない状況でも難しい決断を下し、結果に対しても責任を負う
    • 自社の事業の現況を把握する能力と将来のさまざまな可能性を想定する能力。組織の可能性に的確に対処してチャンスを確実に捉えられるよう何ヶ月も何年も前から計画する

経営幹部の4つの仕事

  • 情報の収集・共有
    • 会議に出席し、メールを読み、書き、部下と1on1を行い、さまざまな意見に耳を傾ける。大量の情報をすばやく集め、そこから不可欠な情報を選り分け、それを第三者にも理解可能な方法で共有する
  • 注意喚起
    • 命令ではなく質問をすることで相手に責任事項を想起させる
  • 意思決定
    • 相容れない見解や不完全な情報も踏まえて針路を決める。
  • ロールモデル
    • 会社の価値観を内外に知らせ、率先して植樹を遂行し、気の進まない場面でもチームに最良の模範を示す

技術系経営幹部の一般的な役割

  • 研究開発(R&D)
    • 実際の開発を行う部門とは別。特に最先端の技術の開発に注力する企業。
  • 技術戦略・ビジョナリー
    • 技術戦略と製品開発を結びつける、。大抵は製品部門の統括者も兼ねる。R&D担当幹部と異なるのは、研究面での可能性には焦点を当てず、業界や技術の動向に基づいて意思決定を導く点
  • 組織化
    • 組織構造はもちろん、チームの要員に関しても計画立案の責任を負い、プロジェクトの担当者を配置する。執行と兼務するパターンが多い。
  • 執行
    • 各部署での職務執行に関する責任。ロードマップの連携、作業の計画立案、広範な事業の調整。
  • 技術部門の対外的な「顔」
    • カンファレンスなどで講演を行う顔など。
  • 社内の技術インフラとその運用
    • 社内の技術インフラとその運用の全責任を担う。
  • 事業化
    • 何よりも事業そのものに焦点を絞る。自社の属する業界に精通し、自社の技術以外の主要部門も高い視点から把握する。社内での開発ニーズと事業拡大のニーズのバランスをとり、高い視点から優先度付をする。

VPoEとは

技術系管理者のランクの最上位に当たる。般に、人員、プロジェクト、チーム、部課の事情に精通したベテラン中のベテラン管理者。

「できる技術担当VP」は、チームの日々の運営に関する責任者として、作業工程も各工程の詳細もしっかり把握しています。進行中の複数の取り組みを同時並行で追跡、把握でき、順調に進捗するよう計らうことができます。有能な技術担当VPは現場の詳細に通じ、下位レベルの作業完遂を促す影響力をもっています。こうした職責をCTOが担っている企業もありますが、CTOと技術担当VPの2つのポストを設けている会社では、CTOが「より広範な戦略」と「社内での技術部門の位置付け」に、そして技術担当VPが「アイデアの実現」に、それぞれ焦点を絞っているのが普通です。

企業が成長し規模が大きくなるとVPの役割も組織志向から事業戦略志向へと変わっていく。各部署のミニCTOとして戦略と組織管理の仕事を天秤にかけつつ遂行していく。企業の成長に伴い、組織管理の仕事は部課長レベルの部下に任せていく。

CTOとは

CTOではないもの

  • CTOは技術系の役職ではない。すなわちエンジニアがそのまま昇進を続けていきつく先の最終目標ではない。
  • コーディングやアーキテクチャ、技術系デザインを愛する人が一般的に楽しめる職種でもない
  • 必ずしも社内でもっとも優秀なエンジニアとは限らない

どんな存在か

  • 「CTOとは、その会社が現在の成 長段階で必要としている戦略的技術系幹部」
  • CTOの職務は「長期的視点に立って考えをめぐらし、事業の未来とそれを可能にする要素とを計画する作業を支援する仕事」
  • 一方、「幹部」という表現を加えることによって表したかった職務は「(上記の)『戦略的な思考』の成果を実現、運用可能にする作業を支援する(そのために問題を細分化し、その対策を部下に実行させる)仕事」です。

CTOの職務

  • まず何よりもCTOは会社のためを思い、事業を理解し、技術というレンズを通して事業戦略を建てられるようでなければならない。
  • 第一に経営幹部たるべきで、エンジニアであることは二の次。
  • 会社にとって最大の技術的な好機とリスクの在り処を把握し、それをプラスに利用することに焦点を絞らなくてはならない。
    • もしCTOが人材の募集、採用、維持、手続きといった人的管理に焦点を当てているのであれば現時点でその会社の技術チームにとってはそれが最重要事項。
  • 会社にとっての事業的な難問を把握すること
  • できるCTOは管理面でも多大な責任と影響力をもつ。事業戦略の決定において自分の影響力を保持するためには、会社や事業に大きな影響を及ぼす問題の解決に人員を割り当てるようにしなければならない
  • 管理の権限をもたないCTOが何かを成し遂げたければ、自身で動いて組織に影響力を及ぼすしか手がない。重要だとCTO自身が見なす領域に、管理者たちが人員と時間を割り振ってくれなければ、そのCTOは無力も同然。管理の責任を放棄したりすれば、事業戦略に関してそのCTOがこれまでに発揮し得たもっとも重要な影響力まで投げ出すことになり、残されたものは組織側の善意と自身の2つの手だけ、と言っても過言ではない。
  • 最後に、晴れてCTOとなり、意欲に燃えている人たちにあえてアドバイスをするとすれば、それは「何よりも事業戦略に関わる仕事を最優先すべし」である

文化の構築

文化の重要性

  • 文化とは「あるコミュニティで共有されている暗黙のルール」
  • 組織文化の意識的主導はリーダーの役目
  • 文化の重要性
    • 集団で意思決定する際、文化的価値感がチームの結束を固める「接着剤」の役割を果たす
  • 企業文化を形作るのは創業時の社員
    • 差別と文化
      • 「MIT出身のエンジニア」というくくりは文化ではない
      • 「技術革新、勤勉、知性、科学的なプロセス、データに価値を見出す人々」は文化

文化を育てるコツ

    1. 担当部署の文化を定義すること
    2. 会社がすでに特定の価値観を打ち出しているなら、それをチームに当てはめてみる
    3. チーム独自の価値観を加えたり言い換えたりしてもいい
    1. 会社やチームの価値観をプラスの形で体現している社員を褒める
    2. これにより文化が強化される
    3. コアバリューにまつわるストーリーを全社会議や部署ミーティングで共有する
    4. 勤務評価も有用
      • チームメンバーと会社との文化的相性を評価する
      • チームメンバーがチームのコアバリューを体現する言動をしたときにそのこととその経緯を勤務評価に明記し面談でも指摘する
    1. コアバリューを採用面接のプロセスに組み込む
    2. エアポートテストはあまり参考にしない方がいい
      • 友達選びではない
      • 友達にはなれなくても仕事で最高の関係を築くことはできる
      • 差別色が濃くなる
    3. 「明確」を期することが大切。具体的に検討する
      • 自分のチームが重視しているのは何か
      • それはどういった点で勤務評価の対象者や面接の応募者の価値観が合致しているのか
    4. 会社の価値観、チームの価値観を書き出してみる
      • 応募者評価や勤務評価の際にそのリストを活用する

キャリアラダーをつくるコツ

  • チームのメンバーにも応援を仰ぐ
    • 自分一人で取り組まず、チームの上級管理者やシニアエンジニアの協力を仰ぐ
    • たとえばエキスパート職に要求されるITスキルについては現職のエキスパートエンジニアに検討してもらう
  • 実例を集める
    • 資料や雛形、他社事例
  • 詳細な説明と要約の2種類の資料を併用する
    • 簡略なスプレッドシートで各ランクの特徴が比較検討できるもの
    • それぞれのランクを文章で詳しく説明したバージョン

まとめ

開発組織で働くエンジニアであれば誰にとっても参考になる良書だと思います。特にまだ管理職からは遠いエンジニアにとっても、キャリアパスを描く上でとても参考になるのでぜひ読んでほしいと思いました。

技術系管理職の課題として仕事に追われて技術のキャッチアップが追いつかないというものはよくあると思いますが、そのあたりのコツが多く書かれていた点も非常に参考になりました。

エンジニアのためのマネジメントキャリアパス ―テックリードからCTOまでマネジメントスキル向上ガイド

エンジニアのためのマネジメントキャリアパス ―テックリードからCTOまでマネジメントスキル向上ガイド

  • 作者: Camille Fournier,及川卓也(まえがき),武舎広幸,武舎るみ
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2018/09/26
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログ (1件) を見る