こんにちは。三村(@t_mimura39)です。
メドピアはいま、大きな変革の真っ只中にいます。 2024年の創業20周年や代表交代、そして2025年のMBO。こうした大きな節目を経て、自らを「第二創業期」の只中にあると定義しています。 そんな中で私は、プリンシパルエンジニアの一人として「プロダクト開発組織の未来図」を描き、その実現をリードしています。評価制度や開発フロー・ルールの刷新など、あらゆる変革の根底にあるのは、一つの極めてシンプルな問いです。
「AIが実装を担う未来において、エンジニアは何に責任を持つべきか?」
今回はその問いに対しての一つの答えを書き記したいと思います。
目次
- 1. はじめに「なぜ今、この責任を定義するのか」
- 2. 三つの責任
- 3. 実装者から「価値の設計者」へ
- 4. 専門性を起点とした、境界なきオーナーシップ
- 5. 結びに「なぜこれらの責任が信託の基礎となるのか」
1. はじめに「なぜ今、この責任を定義するのか」
生成AIの普及により、コードを「書く」という行為は急速に自動化されつつあります。これからのエンジニアの存在意義は、実装という作業そのものではなく、「技術によって、託されたプロダクトの品質を保証すること」に一本化されていきます。
事業の推進者がエンジニアを信頼し、プロダクトという事業の心臓部を託すための共通言語として、「プロダクト開発」を主眼に置くエンジニアが果たすべき「三つの責任」を定義します。
2. 三つの責任
① 構造の責任
「正しく、AIや人間が文脈を理解しやすい秩序を保つ責任」
- 責任の本質
- 変化に強い骨格を設計し、AIが生成する膨大なコードによってシステムの秩序が失われるのを防ぐ。状況に応じて最適な結合度を選択し、開発速度と保守性のバランスを制御する。
- 必要なスキル例
- ドメインモデリング: ビジネスの本質を、シンプルで強固なデータ構造に落とし込む力。
- アーキテクチャ設計: 規模やフェーズに応じ、構成の分割単位と依存関係を定義する力。保守性と速度を天秤にかけ、チームの認知負荷に適した「最適な複雑さ」を選択する。
- 技術的ガバナンス: 命名規則や設計思想の一貫性を守り、AIや人間が迷わず文脈を理解できる「ノイズのない場」を維持する力。
- 具体的なアクション例
- 解決するべき複雑な事象を整理し、単なるデータの保存ではない「ビジネスルールを表現する」強固なデータ構造を定義することで、システムの整合性を担保する。
- 「疎結合」を目的化せず、チームの状況を考慮して、あえてシンプルさを優先するか、抽象化を導入して独立性を高めるかの損益分岐点を見極め、構成を決定する。
- 設計思想と実装の乖離を埋めるリファクタリングを主導し、AIや後続のエンジニアが「推測」なしに改修できる透明性の高いコードベースを維持し続ける。
② 価値成立の責任
「技術をプロダクトの価値へ翻訳し、確実な形として具現化する責任」
- 責任の本質
- 「仕様書通り」の遂行に留まらず、技術の力で事業の可能性を拡張する。ビジネスの意図を咀嚼した上で、プロダクトが進むべき理想の姿を自ら定義し、最短・最良の形で価値へと昇華させる。
- 必要なスキル例
- 技術要素の統合力: 自身の専門を軸としつつ、インフラからフロントエンドまでを地続きに捉え、ユーザー体験を成立させるために必要な要素を繋ぎ合わせる力。
- プロダクト価値の定義: 要求の背景にある課題を技術的に解釈し、プロダクトとしての「あるべき品質や機能」を逆提案する力。
- 仮説検証の設計力: 最初から完璧を目指すのではなく、ビジネスの仮説を最速で検証するための「価値の核」を特定し、素早いフィードバックループを回すための構成を提案する力。
- 具体的なアクション例
- 自身の担当領域を仕上げた上で、APIの挙動や画面の操作感に矛盾がないかE2Eで点検し、必要であれば領域外の修正まで踏み込んで「体験」を完成させる。
- 不確実性の高い新機能において、フルスペックの開発に入る前に「価値の核」を確認するための最小実装(プロトタイプ)を提案・構築し、実戦での検証結果をもとに素早く軌道修正を行う。
- 実装段階で仕様の不備(あるべきプロダクト価値との乖離など)に気付いた際、専門家として代替案を提案・議論し、最適化する。
③ 継続性の責任
「プロダクトが社会的に生存し続け、信頼を維持するための責任」
- 責任の本質
- セキュリティや信頼性、そして経済的合理性を後回しにせず、プロダクトが持続するための絶対条件として維持する。
- 必要なスキル例
- 経済的最適化: インフラ構成やリソース消費をモニタリングし、パフォーマンスを維持しつつコストを最小化する力。
- レジリエンスと可観測性: 異常の予兆を検知し、復旧プロセスをエンジニアリングで自動化する力。
- セキュリティ・バイ・デザイン: 扱うデータの重要性やリスクを予見し、設計段階から堅牢な保護の仕組みを組み込む力。
- ライフサイクル管理: 技術負債を適切に管理し、計画的なアップデートによってシステムの陳腐化を防ぐ力。
- 具体的なアクション例
- リソースの利用効率を追求し、モデルの選定やキャッシュ戦略の最適化を通じて、事業利益を圧迫しない技術構成を実現する。
- SLO/SLIを定義し、「人が介入すべき真の異常」のみを抽出するアラート設計と、復旧手順の自動化を推進する。
- 認証基盤やデータ保護など、社会的な信頼に応えるためのセキュリティ基準を満たすアーキテクチャへの継続的な投資と改善を行う。
3. 実装者から「価値の設計者」へ
これらの責任は、生成AIが登場する以前からエンジニアリングの根幹を成すものでした。しかし、AIがコード生成の大部分を肩代わりする現在、その重要性はかつてないほど高まっています。
これからのエンジニアは、コードを書くという「手段」の習熟から解放され、エンジニアリングの「本質」に対してのみ注力する時代へと突入します。
- 「作る」から「成立させる」へ
要件をコードへ翻訳するだけの段階は終わりました。これからのエンジニアリングとは、実装の先にある「構造の妥当性」や「経済的な持続性」を束ね、プロダクトを事業として成立させることそのものを指します。実装は責任を果たす過程で生まれる成果物であり、目的そのものではありません。
- 「何を託すか」から「誰に託すか」へ
AIがコードを書ける時代だからこそ、事業推進者が抱く問いは「何ができるか」から「誰にこの事業の心臓部を託すべきか」へと変わります。三つの責任を引き受け、プロダクトの命運を担える「設計者」であること。それこそが、変化の時代において私たちが信頼され続けるための確かな指針です。
4. 専門性を起点とした、境界なきオーナーシップ
私たちは、個々のエンジニアが持つ深い専門性(モバイル、バックエンド、SREなど)を、三つの責任を果たすための強力な「武器」であると定義します。しかし、専門性を磨くことは、自らの貢献を特定の領域に閉じ込めることではありません。
- 専門性は「目的を達成するための起点」
自身の得意とする領域において、卓越した品質で構造を保ち、価値を成立させ、継続性を守ることはエンジニアとしての「ベースライン」です。しかし、私たちの真の目的は技術の出力そのものではなく、プロダクト価値の完遂にあります。
- 「価値の完遂」が行動の射程を決める
例えば「② 価値成立」の責任を果たす上で、自身のメイン領域の修正だけでなく、APIの仕様変更やデータベースの調整、あるいはインフラの構成変更が必要であれば、技術スタックの境界を自ら越えて課題解決に当たることを求めます。
- 技術領域に安住しない
「ここから先は自分の領域ではない」という心理的な境界線を設けず、「プロダクトを成功させるために、今、解決すべき課題は何か」を最優先する姿勢が重視されます。専門性は、自身の貢献を規定するための枠組みではなく、より広範な課題を解決するための確固たる足場として機能させます。
5. 結びに「なぜこれらの責任が信託の基礎となるのか」
事業の推進者はエンジニアに「コード」を頼むのではありません。「技術を通じて、この事業を成功させてほしい」という願いを託します。
- 構造があるから、明日も加速できる。
- 価値成立があるから、ユーザーに届く。
- 継続性があるから、安心して使い続けられ、事業が成り立つ。
この三つの責任を果たすこと。それこそが、私たちが専門家として信頼を受け、プロダクトに命を吹き込むための証明です。コードの先にある、事業の未来を共に創りましょう。
是非読者になってください!
メドピアでは一緒に働く仲間を募集しています。
ご応募をお待ちしております!
■募集ポジションはこちら medpeer.co.jp
■エンジニア紹介ページはこちら engineer.medpeer.co.jp
■メドピア公式YouTube www.youtube.com
■メドピア公式note
style.medpeer.co.jp