見出し画像

読書感想文4【エンジニアのためのマネジメントキャリアパス】【ソフトウェアファースト】その2

はじめに

こんにちは。ヨシミツダです。前回、「エンジニアのためのマネジメントキャリアパス」という本をご紹介しました。自分の中で謎であったテックリードという役割とキャリアラダーという考え方について知るきっかけになり、自分自身のキャリアラダーを考えるきっかけとなりました。

一歩前進したのですが、テックリードの後にいきなりCTOや技術担当VPになるわけではないので非常に中抜けしてる印象があり、どうしたものかと考えていときに出会った本が今回紹介する「ソフトウェアファースト 及川卓也著」です。この本ではより詳細なエンジニアのキャリアラダーの事例を紹介しています。

ソフトウェアファーストとは

本書のタイトルにもなっている「ソフトウェア・ファースト」とは、IT(とそれを構成するソフトウェア)活用を核として事業やプロダクト開発を進めていく考え方です。そして本書では、このソフトウェアファーストなプロダクト開発に関わる話が幅広く展開されています。今回はキャリア開発の話をしたいので、5章の「ソフトウェア・ファーストなキャリアを築くには」の記載内容を中心にご紹介します。なお、本書には今完全にバズワードとなっているDX(デジタルトランスフォーメーション)のことについてもふれられています。DXについては、沢山の書籍があふれていますので、併せて別の機会にご紹介するようにします。

ソフトウェアエンジニアのキャリア3大分類

本書ではソフトウェアエンジニアのキャリアを大きく3つに分類しています。

1.エンジニアを極める
2.エンジニアリングマネジャーを志向する
3.プロダクトマネジャーを志向する

それぞれどの領域に軸足を置くかによって、目指す職種やリーダーシップを発揮すべき対象も変わります。エンジニアを極めるキャリアを選んだら組織やビジネスに関心を持たなくていいというわけではなく、同様にエンジニアリングマネジャーやプロダクトマネジャーを志向する場合も、最新技術に疎くていいわけではありません。

どのキャリアパスを選ぶにしても全員が「技術」「人・組織」「プロダクト・ビジネス」それぞれに一定の責任を負うことが求められます。

1.エンジニアを極める

エンジニアとしてスペシャリストを目指すにはT型のスキルモデルによる縦軸を集中的に伸ばしていく環境が必要です。
エンジニアとしてスペシャリストを目指す場合、職位の上がったエンジニアは何を持ってエンジニアリングマネジャーやプロダクトマネジャーと同等に認められるのか、定義しておくことが重要です。前例がない場合は自ら提案してみましょう。自社技術のエバンジェリスト(伝道師)となるなどです。本書でも説明されていますが、スペシャリスト系での事業貢献度を定義するのは簡単ではないと思います。特に私はメンバーシップ型雇用の会社(2020年12月現在)に勤めていますが、評価の仕組みがそもそも確立できてないと感じます。会社に専門職という制度はありますが、あまり取得している人はいません。これは、個人的な意見ですが、開発という行為の成果物であるプロダクトの価値を市場で検証するタイミングにタイムラグがあるため、アウトカムとしての技術的な貢献度を評価することが、難しいからというのも一因ではないでしょうか。課題は感じますが、制度としてキャリアパスがあるかないかで、成長意欲が変わってきますので、エンジニアとしてスペシャリストを目指すのであれば、まず職位につくための条件を明確にしておくことが必要です。

2.エンジニアリングマネジャーを志向する

スキルや経験に幅のあるメンバーの力を引き出し、組織の力で課題に対処することにやりがいを感じるのであればキャリアの方向性をエンジニアリングマネジャーに切るのも良い選択です。エンジニアリングマネジャーは技術を学び続ける意欲を持ち続けなければなりません。かつては優れたエンジニアだったとしても、今主流になっている技術に疎くなってしまった人間に、マネジメントされたくないという意識を持っているエンジニアは少なくないからです。
エンジニアリングマネジャーを目指す人は、組織論やマネジメント手法について学ぶ一方、最新技術の習得を怠ってはいけません。

製造業のメーカーで働いていると、特に専門性を規定しない中間管理職という位置づけのマネージャがポストとしてあると思いますが、これからはマネージャにも一定のドメイン知識や専門知識に基づいたリーダーシップの発揮が求められると感じています。

今の会社では、ものすごく雑に管理職になるのか専門職になるのかを問われますが、管理職というひとくくりではなく、どのようなエンジニアリングマネージャになるかということをもう一段深堀りする必要があると感じています。

3.プロダクトマネジャーを志向する

プロダクトマネジャーはプロダクトや事業への関心が強いエンジニアのキャリアパスです。
プロダクトマネジャーは、その事業やプロダクトを成功させるために必要なものをすべて理解し、全責任を負うという非常に難しい立場を担います。

ソフトウェアエンジニアの主なキャリアパス

ソフトウェアエンジニアの主なキャリアパスとして下記のようなキャリアパスが紹介されています。

・テックリード
・特定分野のスペシャリスト
(例:データサイエンティストなど)
・エンジニアリングマネジャー(職性転換)
・プロダクトマネジャー(職性転換)

さらにその後のエンジニアリングマネジャーのキャリアパスとしては以下が紹介されています。

・CTO
・VPoE

VPoEとは(Vice President of Engineering)という役職で、役割としては「エンジニアのためのマネジメントキャリアパス」で紹介した技術担当VPと同義ではないかと思います。

プロダクトマネジャーの主なキャリアパスとしては以下が紹介されています。

・CPO(Chief Product Officer/最高プロダクト責任者)
・事業責任者

CPOはプロダクトマネジャーを統括する役割を持ちます。プロダクトと事業は重なり合うことが多いので、事業責任者のキャリアパスもあります。一般的なメーカーなどでは企画部長とか事業部長などという肩書のイメージですが、CPOの方が役割のイメージがよりソリッドです。

プロダクトマネージャに関しては以前ご紹介した以下の記事も参考にしてください。

その他の職種別のキャリアパスについても紹介します。

デザイン・UX関連職の主なキャリアパス
・UXリサーチャー
・UXデザイナー
・UX部署のマネジャー
・CCO(Chief Creative Officer)
・CXO(Chief eXperience Officer)
・プロダクトマネジャー

UXを重要視する会社は増えてきています。ソフトウェアファーストを目指す組織の場合は、全員がUXを意識して、組織が必要とする基礎的なスキルを一通り持つことが望ましいです。

QA関連職
・QA担当者
・QAマネジャー
・テスト担当ソフトウェアエンジニア
・エンジニアリングマネジャー(職性転換)
・プロダクトマネジャー(職性転換)

プロジェクト管理関連職
・プロジェクトマネジャー
・プログラムマネジャー
・エンジニアリングマネジャー(職性転換)
・プロダクトマネジャー(職性転換)

プロジェクトマネジャーとはプロダクトを「いつ」だすかに責任を負う役割の人です。メーカーではもっと広義の意味を持つ印象があります。以前に大規模なプロジェクトを担当した時に外注して外資系企業の方に仕事を依頼したことがあるのですが、完全に計画管理に特化していた専門職の仕事であったことに驚いたことがあります。

自分自身のジョブディスクリプションを作ろう

これまで説明してきた内容は自分が進みたいキャリアラダーの参考にはなるかと思いますが、まったく同じということにはならないと思います。ですから、自分自身のキャリアラダーを参考に獲得すべきジョブディスクリプションを作成してみましょう。

ジョブディスクリプションの構成要素
・募集の背景
会社や事業の状況についての説明や、今回の募集の背景について、必要ならば説明を入れる。
・職務内容
募集ポジションに期待される職務について説明。次の「責任」と被る内容であるため、どちらか1つの項目として説明されることも多い。もし別に項目を用意するならば、こちらの職務内容ではよりハイレベルな、そのポジションに期待される内容でも、部署全体で取り組んでいるような内容について記載する。
・責任
募集ポジションの責任範囲。具体的にどのような役割を担うのか、どんな職務を全うすることが期待されているのかを記載する。
・要件
「要件」で定義された責任を全うするために必要と思われる要件を記載する。必須とそれ以外をMust/Want/Nice to Haveのように分けて記載することも多い。

ちなみに今スタートアップ界隈で凄まじい勢いで時価総額が上がっているM3さんのジョブディスクリプションを、参考にご紹介します。
(M3さんのテックブログより引用)

機械学習エンジニア(AIチーム)
ミッション
AI・機械学習を活用して医療の質を向上させる。

適切な対象者に適切な情報を適切なタイミングで届けることが医療発展のキーと考えており、機械学習・AIの活用により達成できると見込んでいます。
担当事業、サービス
事業横断でサービスの改善/開発を行う。主にアルゴリズムの開発とその基盤開発を担当する。
担当業務
機械学習技術を用いたサービス開発・改善 エムスリーが提供するサービスを改善するためのアルゴリズムの開発を担当。 (例:コンテンツのリコメンデーション、メールマガジンのパーソナライズ) 機械学習とコンピュータサイエンスを用いて自らシステム開発を行う。
よりチャレンジングな課題の解決 取り組むべき課題として、医療分野におけるAI・機械学習技術の応用(診断補助、画像診断、創薬など)やまた、多様なフォーマットのコンテンツを適切に医療従事者に届けるためのアルゴリズム(専門性の高い文章の自動要約、翻訳、キュレーション)の開発があります。
技術スタック
言語: Python / Ruby / Scala
チャットツール: Slack/ChatWork
チケット管理: JIRA
ソースコード管理: GitLab
CI ツール: GitLab-CI
インフラ: オンプレミス/AWS
チーム体制
エンジニアリンググループ AI・機械学習チーム

社長直轄のもと新規チームの立ち上げに主体的に関わることができます。 全社工数削減にも寄与できると見ており、経営的な観点からも期待されています。 皆ベンチャーマインドが高く、機械学習・AIでビジネスを加速する情熱的なチームです。

<チーム体制> 機械学習エンジニア3名(Ph.D.保有者、スパコン開発者)、ソフトウェアエンジニア2名
得られる経験・スキル
医療系のデータ(テキスト、画像、動画)があり、それらを用いたアルゴリズム開発が行える。
少人数で多くのサービスをサポートしており、アルゴリズムのメイン開発者になれる。
ビジネス側の担当者もデータ分析/機械学習の活用に理解があり、新規アルゴリズムを積極的に導入できる。
応募条件(必須)
機械学習、自然言語処理、最適化アルゴリズムのいずれかの分野の専門知識と実務経験
年間60本以上の論文(機械学習系)を読み、そのうち6本以上を追試していること。
Python等のプログラミング言語によるプロダクションコードの開発経験
応募条件(できれば)
自然言語処理の開発経験
画像処理の開発経験
推薦システムの開発経験
広告配信最適化の開発経験

スタートアップの会社では自社のアピールを含めてテックブログを書いているところが多く、その中でリクルーティングをしていることが多いです。自分が興味のある分野で今伸びている会社や力のある会社がどんなジョブディスクリプションを掲載しているか、確認することは参考になると思います。


いかがでしたでしょうか。エンジニアのためのキャリアパスについての本を2回にわたってご紹介してきましたが、具体的なジョブディスクリプションとキャリラダーを記載することで、現在の仕事をしながら獲得すべきアセットの整理やこれから目指す職種やポジションを明確にすることの一助になれば幸いです。

いいなと思ったら応援しよう!

この記事が参加している募集