見出し画像

プロダクトエンジニアとは何者か

みなさん、こんにちは。物流・運送会社向けにSaaSを開発するアセンド株式会社でCTOを務めている丹羽です。今回はプロダクト志向を持つエンジニアに向けて、プロダクトエンジニアという職種についてまとめました。

プロダクトエンジニアはフロントエンド・バックエンド・デザイン、そしてあらゆる領域を越境してプロダクトのあるべき姿を構想し、優れた顧客体験を生み出します。そんな顧客課題を中心として、プロダクト志向を持って情熱的に開発するエンジニアにスポットライトを当てます。


プロダクトエンジニアという職種の出現

みなさんは"プロダクトエンジニア”という職種を聞いたことはあるでしょうか。一般的なフロントエンドエンジニアやフルスタックエンジニアに比べると聞き馴染みはない一方で、開発の中心にプロダクトの価値追求を置くエンジニアを指すといえばしっくりくる方も多いと思います。プロダクト志向を持つエンジニアは体感的にも増加しており、採用の面でも国内外の企業でプロダクトエンジニアの職種を定義し始めています。私たちアセンドも11月より募集する職種をプロダクトエンジニアとして再定義しました。

プロダクトエンジニアという言葉はソフトウェア開発の根本的な本質を持つ一方で出現には時間がかかりました。ソフトウェアは問題解決を目的として創られ、プロダクトとして世に普及しています。一方でこの本質的な職種名が出現するには専門性という壁の突破が必要でした。

  • 技術の一般化。フロント、インフラのように技術領域を切り口とした職種名が長く使われてきました。これは1領域を修めるだけで1人格を必要とする専門性が求められた為です。OSS(オープンソースソフトウェア)の成長により技術はある程度隠蔽され、GitHub Copilotの登場により技術はより平易になりました。フルスタックエンジニアが増加してきたことは技術が平易になったことを表すと考えられます。

  • プロダクトマネジメントの一般化。プロダクトマネジメントも専門性を必要とし1人格を要する領域でした。ここにおいてもプロダクマネジメントのナレッジが広まりや、研究による知識・手法の体系化により専門性の獲得がしやすくなったことがあります。

このようにして1人格で複数領域を学び修めることがしやすくなったことで、ソフトウェア開発の本質=プロダクト志向を持って開発に取り組むことができる状態になったのです。

Product Engineer という名前は、JIRA等を開発する Atlassian のプロダクトマネジャー Sherif Mansour が2018年に執筆したこちらの記事で話題となったのがおおよその始まりとなります。この記事ではプロダクトエンジニアの特徴と共に、プロダクトエンジニアの存在は優れた製品の構築に欠かせない存在であると述べられています。

Over my last ten years of product management, I’ve come to conclude that product engineers are a critical ingredient to helping you build a successful product, scale yourself and become a better product manager.

プロダクトエンジニアが持つ3領域

プロダクトエンジニアは機能開発の全体にオーナーシップを持つため、関心を持つべき領域は広くあります。エンジニアであるためテクノロジーを軸としますが、デザインや顧客ドメインの領域へ越境することにより価値を出します。フルスタックエンジニアと比較すると各技術領域への深い理解は必ずしも必要ではなく、プロダクト構築に必要なスキルを持って適宜スペシャリストに頼る推進力が求められます。

プロダクトエンジニアが持つ領域をテクノロジー・UXデザイン・ドメインの3つに整理しました。 Martin Eriksson が表したプロダクトマネジメントのベン図と比較するとビジネス部分をドメインに変えています。PMのビジネス領域ではマーケティングやセールスの計画をも含むため領域を狭めた形です。

プロダクトエンジニアが関心を持つ3領域

それぞれの3領域でプロダクト開発で重要な要素はなんでしょうか。

テクノロジー

まずひとりで1機能を単独で実装できる技術力があることは望ましく、技術力の深さとソリューションの多様さは優れた顧客体験を創る根源になります。その上でドメイン駆動設計を用いた顧客業務の再現力や、検証イテレーションを早く回す開発生産性の高さが求められます。

UXデザイン

単純なUIのデザインではなく顧客体験のデザインが求められます。見た目上の美しさはデザイナーとの協業で良いが、良い体験へのコミットメントは不可欠です。Lean開発やカスタマージャーニーマップを用いた仮説検証と顧客要求の整理や、オブジェクト指向UIや情報アーキテクチャ等のUI設計手法はエンジニアにとって強力なツールとなります。

ドメイン

顧客理解の解像度を高く持ち、それを源泉として優れた体験を創出することがプロダクトエンジニアの一番の特徴です。顧客のリアルな現場、業界の商慣習、ビジネスモデルなど、知るべき事柄は広範囲にわたります。技術的課題より前に仕様の誤りがあるケースは多く、技術・デザイン・ドメインの各領域の制約を正しく理解することが、最適なアーキテクチャの構築につながります。

3領域を1人格で持つことの強みは大きくあります。フロントとバックエンドの両方を修めることで負債の少ないシステム設計が可能となるのと同様に、3領域の制約を理解することで全体の最適化を図ることができます。
何よりも、開発速度が格段に向上します。一人の思考の中で物事が解決されるためコミュニケーションコストが削減され、一人で思考のイテレーションを高速に回すことができ、明らかに誤った選択肢を早期に排除できます。

プロダクトエンジニアが持つ5つの特性

プロダクト志向を持って情熱的に開発に取り組むエンジニアですが、優れた顧客体験を生み出す彼らにはいくつかの共通した特性があります。

プロダクトエンジニアが持つ5つの特性

顧客ドメインやビジネスに対する高い好奇心

プロダクトエンジニアは技術だけでなく顧客ドメインやビジネスに対しても高い好奇心を持ってプロダクト開発を楽しみます。プロダクトのアイデアは思いつきではなく、顧客課題の解決・ゴールから逆算されるものと認識しているため、ゴールを何と設定すべきか高い解像度を持って理解するために時間をかけます。またドメインに対する情報を事実と仮説に切り分け、エンジニアならではの科学的なアプローチで理解を深めることも特徴です。

専門領域の越境とキャッチアップの素早さ

広く領域をカバーすることが最適な設計へ繋がることを知っているため、領域の越境を易々とするのがプロダクトエンジニアです。技術を課題解決のためのツールとも見做しています。一般的な技術軸での学習に比べて極めて実践的で目的意識を持って行われるため学習効率は高く、エンジニアとしての成長も意外にも速くあります。

探索的かつ迅速な仮説検証サイクル

優れた体験を生み出すためには数多くの失敗が必要となることをプロダクトエンジニアは知っています。プロダクトとは不確実性の塊であり、検証を経ることでしか確実さは得られません。リーン開発・MVP(Minimum Viable Product)の手法を活用して積極的に顧客へ仮説を当て、小さく開発し小さく失敗することでプロダクトの価値を積み上げます。

アンラーンを受け入れる素直なコミュニケーション

自身の成果ではなく、顧客課題の解決に対して忠実であることも特徴です。優れた仮説を立てるために健全な対立的な議論をする一方で、自身が立てた仮説が誤りであることを素直に認め、課題解決を第一とした素直なコミュニケーションをとります。自身の誤った学びを正しく捨てるアンラーンに対しても積極的です。多様な観点が最良なプロダクトを創ると知っているため、ステークホルダーに対しても積極的に仲良く会話し関係を構 築しています。

課題解決に対する強いオーナーシップ

プロダクトエンジニアが最も無くしてはならないのが顧客課題解決に対するオーナーシップです。仕様策定から実装、機能検証を含めてプロダクト価値を最大化するためにあらゆることを行い、ステークホルダーを巻き込んだ推進力を持ちます。リリースは完了ではなく、継続的に顧客のサクセス状況を確認し、期待を満たさない場合は原因を分析し改善を進めます。この反復的な学習サイクルを通じてプロダクトとドメインに対して深い洞察を持つエンジニアへと成長していきます。

プロダクト志向を持ち、社会課題・顧客課題を解決する

テクノロジー、UXデザイン、プロダクトマネジメントの進歩が、プロダクトエンジニアという新たな職種と考え方を生み出しました。これにより、ソフトウェア開発は技術的な側面を超えて、より本質的に社会や顧客の課題解決に向き合えることが可能になりました。

プロジェクトマネジャーという考え方からプロダクトマネジャーへ移ってきたように、ソフトウェアエンジニアからプロダクトエンジニアへ比重が高まる流れは確実に起こります。プロダクトエンジニア独自の知識・知見は重要であり、日本のアジャイル開発がコミュニティと共に進化してきたように、この分野でもコミュニティの形成が必要と考えます。

「Product Engineer Night」と題してプロダクトエンジニアが集まり、深く議論し学び合う場を創りました。初期は私がCTOを務めるアセンドのサポートを受けながらも、より公共性の高いコミュニティへと進化させていくことを目指し、日本国内で社会課題や顧客課題に向き合ったプロダクトエンジニアが増える大きな流れとしたいと考えています。

プロダクトエンジニアに共感してくださる方の、応援と参加を心よりお待ちしております!


この記事が気に入ったらサポートをしてみませんか?