エンジニアリングマネージャーという闇に立ち向かう勇者たちへ。

# はじめに

[Engineering Manager Adventcalender 2022](https://qiita.com/advent-calendar/2022/em) 最終日の記事です！

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242212/05c59a4e-8dd2-14d5-8470-c9876455a4f8.png" width=200><img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242212/92835d08-3149-2e2a-a8e2-b153be70a315.png" width=450>

はじめまして。 [ふるさとチョイス](https://www.furusato-tax.jp/)などの地域に向けたサービスを複数展開している、[株式会社トラストバンク](https://www.trustbank.co.jp/)CTOの[「山崎賢 ／ やまけん」](https://www.google.com/search?q=%E5%B1%B1%E5%B4%8E%E8%B3%A2+CTO) です。

私のプロフィールは、[こちら](https://www.wantedly.com/id/ken_yamazaki_r)をご覧ください。

# エンジニアリングマネージャーというお仕事

<b>みなさん エンジニアリングマネージャーしてますか！！！？？？？</b>

私、実はエンジニアリングマネージャーって言葉ぜんぜんしっくり来ません。

| ことば | 意味 |
|:--------------:|:------------------------:|
| エンジニアリング | 工学 |
| マネージャー | 支配人 ／ 管理者 |


うん。全然わからん。

# EMの揺れ幅

このように抽象度が高い「エンジニアリングマネージャー」という役割は、

- 会社 （ 会社ごとの職務要件や事業フェーズ ）
- 組織 （ 組織における期待役割 ）
- 個人 （ 個人の能力として担っている範囲 ）

それぞれが組み合わさって定義されています。 つまり「エンジニアリングマネージャー」という言葉が示す役割は、捉えられる幅が無限に近い広さがあります。

<b> 「EMなんだから、技術に詳しくなくちゃダメじゃん」 </b>
<b> 「EMなんだから、メンバーと向き合ってちゃんと育成させてくれないと」</b>
<b> 「EMなんだから、エンジニアリングのこと何でも相談していいんでしょ？」</b>
<b> 「EMなんだから、プロジェクトの管理しっかりしてよ」</b>
<b> 「EMなんだから、エンジニアの採用活動とかブランディングもしてね」</b>
<b> 「EMなんだから、障害っぽいんだけど当然対応してくれてるよね？」</b>


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242212/9644ca3d-2252-b4e1-a150-00c6ace6ce8d.png)

**いやいや、闇しか感じないですよね。**

# 一応学習してみる

エンジニアリングマネジメントは、著名なところでいうとアメリカの[ASEM :  American Society for Engineering Management](https://asem.org/)が役割などを定義しています。

また、アメリカなどでEngineering ManagerのJob Descriptionを色々見ると概ね以下のような役割を期待されているようです。
```
- Research and develop designs and products
- Determine the need for training and talent development
- Hire contractors and build teams
- Ensure products have the support of upper management
- Provide clear and concise instructions to engineering teams
- Lead research and development projects that produce new designs, products, and processes. 
- Check their team’s work for technical accuracy
- Coordinate work with other managers and staff
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242212/a973e344-91ad-74e1-6f6e-06d12105cb53.png)

**うん。アメリカでも闇職種でした。**

# エンジニアリングマネージャーに求められるスキル

日本／アメリカ、双方ともにEMに求められるスキルが非常に高いことがわかりました。
たぶん箇条書きするとこういったスキルが求められます
※ 以下はソフトウェアエンジニアに対するエンジニアリングマネージャーと過程して記載しています。

| 必要とされるスキル | 
|:--------------:|
| コーディングスキル |
| 設計能力 |
| プロジェクトマネジメント力 |
| プロジェクト計画策定能力 |
| 意思決定力 |
| チーム組成能力 |
| チーム管理能力 |
| メンバー管理能力 |
| メンバー育成能力 |

これがそれぞれ完全にこなせる人が居たら、もはやEMという職種を超えた**個人的スーパープレイヤー**なのだと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242212/3f5bc592-6451-a37d-8347-806de8f2dc77.png)
仮にこの役割を完全にこなしていたとしても、同じことを出来る後任を育成することは超ハードプレイであり、結局組織として再現性の無いポジションを作ってしまっているということなので、称賛されるべき状態ではないです。

# この闇に戦うみんなへ捧げる 3つの武器

この闇のような職種に対して、自分自身が闇落ちしないようにするために以下のことをしっかりと定義し、自組織に対しても、組織外に対しても、上司に対しても宣言することが重要です。


## <font color="red"> 武器1 </font> 権限モデルを利用して役割を定義

私はよく自分の業務も含めて、権限を論理的に分解して整理します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242212/7c2507e0-fed7-7bf2-28be-5bae9f7303e5.png)

背景として、今まで多くの会社で管理的な役割をしてきましたが、上司が思う期待と、それを受け取ったメンバーの受け取り方に大きなギャップがあることが余りに多く、そのギャップを埋めることの必要性を痛感し続けてきました。

特に日本においては上意下達的な文化が強く、上司に指示されることは <font color="blue"><b>「職務命令」</b></font> となり、命令を受け取った本人はそれを<font color="blue"><b>「わたし個人の仕事」</b></font>として受け取りがちです。

上司が求めているのは、<font color="red"><b>「組織としての仕事の成果」</b></font>なのに、なぜか個人の仕事つまりタスクに落ちてしまっているのです。

しかし、エンジニアリングマネージャーは直接的／間接的に関わらず多くの人（特にエンジニア）とコラボレーションしていく役割です。
そんな役割の人が、組織に求められるアウトプットを個人の仕事として認識することは<font color="red"><b>大きな誤り</b></font>です。

先程の<b>「必要とされるスキル」</b>の表を<b>「必要とされる機能」</b>と変換して列を追加して権限を分解してみましょう。

| EMに必要とされる機能 | 必要とされる成果 | 私の責任 | 実行責任者と仕組み |
|:--------------|:-------------|:-----|:----------------|
| コーディングスキル | 正しいコーディングがされた成果物がアウトプットされること|必要な人員への権限委譲 | 組織のTechLeadにコーディングレビューを実施してもらいソフトウェア品質の実行責任を負ってもらう |
| 設計能力 | 要件に対して正しい設計あり、今後の機能拡張や運用も考慮された設計がアウトプットされること | 必要な人員への権限委譲|組織のベテランエンジニアで設計能力が高い田中さんに基本設計はお願いし、その基本設計をTechLead2名以上でレビューする |
| プロジェクトマネジメント力 | 稼働中のプロジェクトがゴールに向けて進行していること | 体制構築 | プロジェクト毎にPMOを定義し、プロジェクト進行中の課題管理とスケジュール調整や異常のレポートなどを即座に実施出来る体制を作る |
| プロジェクト計画策定能力 | プロジェクトの目的に沿った成果物とタスク、WBSを策定する | 仕組み化と最終レビューア | プロジェクトに必要となる成果物をひな形として定義し、それを用いて各プロジェクトのリーダーが成果物定義とWBSを作成。作成されたプロジェクト計画を私がレビューする |
| 意思決定力 | 各ポイントにおいて正しい意思決定がされること | 権限委譲と最終承認 | 意思決定の内容に応じて権限表を作成する。インフラに関する意思決定は山本リーダー、 設計方針については田中さん、要件については私が意思決定する。各意思決定事項はリーダー会議で共有する仕組みとする |
| チーム組成能力 | 現状チーム力の維持、未来に必要とさせる体制の構築 | 必要人員の定義 | 現有人員のスキルを可視化し、追加で必要となる人員もスキルベースで人数と共に定義。人事部門と相談し不足人員の採用は人事側責任へと依頼する。| 
| チーム管理能力 | 現存チームのコンディション向上と生産性向上 | チームリーダーへの権限委譲 | チーム管理として自分がレポートを受けたい項目を各チームのリーダーへ伝達。毎月の定例会で各チームリーダーから私へ項目ごとのチーム状態の報告をしてもらい必要に応じてアクションプランも説明を求める |
| メンバー管理能力 | メンバーコンディションの確認 | チームリーダーへの権限委譲 | チームリーダーには毎週のメンバーとの1on1を指示。私はチームリーダーと毎週1on1をすることによってチームリーダーのコンディションや悩みを確認する |
| メンバー育成能力 | メンバー育成 チーム力強化 | チームリーダーへの権限委譲 | チームリーダーに対して各メンバーとの1on1を通して個人の現状と目指したい方向性を加味した育成計画を作成することを指示。各メンバーの育成計画をクォーター毎にチームリーダーからレポートを受ける |

このように、
<font color="blue"><b>「私が実行責任を負うこと」</b></font>と、
<font color="blue"><b>「私が仕組みを定義して任せること」</b></font>と、
<font color="blue"><b>「私が報告を受けたいこと」</b></font>
を明確に分けることによって、自分の能力とタスク量に向き合った上で整理が出来ます。

「全て私がやる」と考えると闇しか感じないEMという役割も、

<b>「実は組織設計者であり、最も大事なのはこのようにプロセスを細分化して権限含めて管理することと、それを通じたアウトプットである」</b>

というマインドを変化させると自然と自分が時間を使うべき物事に向き合うことが出来るようになります。

## <font color="red"> 武器2 </font> 出来ないことを宣言する

先程整理した表は、組織に権限や役割を委譲出来る人員が居ることが前提となっています。
会社のフェーズや状況によっては、<b>「それでも俺がやらなきゃ」</b>というシーンは多く存在すると思います。

まずは現有人員が居なくとも、武器1の表を理想で作ってみてください。

そうすると、そこに不足している人員は
- <b>採用すべき人員</b>
- <b>採用できないのでなんとか苦しみながらやらなければいけないタスク</b>
のどちらかになります。

これらの事実を上司／周囲／会社全体へ公表／宣言することにより、EMという役割に求められる膨大な能力は個人で担うべきものでなく組織全体としての不足分を含む可視化された課題だと認識されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/242212/41186d97-e437-37ab-bafa-318070299044.png)

そうなったとき、エンジニアリングマネージャーという深い闇は、会社全体が立ち向かうべき未来へのプロセスへと昇華します

## <font color="red"> 武器3 </font> 未来を作ることに時間を割く

武器1で分解した表に行を一行加えてみてください

| EMに必要とされる機能 | 必要とされる成果 | 私の責任 | 実行責任者と仕組み |
|:--------------|:-------------|:-----|:----------------|
| イノベーション | 現状の延長ではない組織的／技術的に関わらずポジティブな変革をもたらす| 私が実行する | 私が先陣を切ってコミットする。 |

多くの組織は、ティールであれホラクラシーであれヒエラルキーであれ、実務に近い業務をしている人は短期的な業務を遂行することに視野も時間も割かれています。
組織全体が短期的視点で業務を実施していると、インクリメンタルに成長はするかもしれませんが、<b>イノベーションのジレンマ</b>に陥り後発に対してあっけなく敗北するときが来ます。

<b>マネージャー</b>、<b>部長</b>なんでもいいですが、管理的な役割で裁量を持っている人こそ、現状を廻すことは積極的に現場に権限を委譲し未来に対して変革させる何かを検討することに時間を意図的に割けるようにしてください。

<b>エンジニアリングマネージャー</b>は、組織変革だけでなく技術的な変革も実施可能な立場なので、ぜひそれもあなたの仕事のラインナップに加えた上で内部／外部へ積極的に宣言しましょう！

# おわりに

[株式会社トラストバンク](https://www.trustbank.co.jp/)では、エンジニア／エンジニアリングマネージャー含めて、全方位的に仲間を募集しています！！ 

https://www.wantedly.com/companies/trustbank/projects