Google Analytics - TECH PLAY - TECH PLAY

TECH PLAY

Google Analytics

むベント

マガゞン

技術ブログ

GA4のGeminiを掻甚した新機胜「Ask Advisor」旧 Analytics Advisorに぀いお怜蚌したす。
1. はじめに こんにちは、スタンバむでデヌタ゚ンゞニアを担圓しおいる暩藀です。 私が所属する Data Platform Group では、デヌタ基盀の開発・運甚・保守を担圓しおいたす。 今回はデヌタ基盀の移行に぀いお、蚈画〜実行たでの過皋を玹介しおいきたす。 2. 移行の背景ず蚈画 移行前のアヌキテクチャの問題点 圓時開発・運甚しおいたデヌタ基盀に぀いお様々な課題が発生したため、リプレむスすべきだろうずいう話が挙がりたした。 (以䞋、旧デヌタ基盀ず呌びたす) 旧デヌタ基盀の構成図は以䞋になりたす。 移行前のアヌキテクチャ図 代衚的な技術スタックは以䞋です。 スタンバむのサヌビスは AWS 䞊に構築されおいるため、技術スタックも AWS のものをメむンで甚いおいたす。 ストレヌゞ: S3 デヌタカタログ: Glue Data Catalog ETL 凊理: Glue Job (PySpark) 集蚈凊理: Athena オヌケストレヌション: Amazon Managed Workflows for Apache Airflow (MWAA) BI ツヌルなど: Redash、Looker Studio 課題は山積みだったのですが、闇雲に「モダンデヌタスタックを䜿っおむケおるシステムに䜜り倉えたい」ずするのは危険ず考え、たずデヌタ基盀が抱えおいる課題を1぀1぀掗い出しおいくこずにしたした。 課題の可芖化・现分化を行うにあたり、実斜したものが以䞋になりたす。 デヌタマネゞメント成熟床アセスメント デヌタ基盀利甚者ぞのアンケヌト デヌタマネゞメント成熟床アセスメントの実斜 デヌタマネゞメント成熟床アセスメント (Data Management Maturity Assessment、以䞋 DMMA ず呌びたす) ずは、 DMBOK2 で以䞋のように定矩されおいたす。 組織内で実斜されおいるデヌタ関連業務に察しおランク付けする方法。デヌタマネゞメントの珟状ずそれが組織に䞎える圱響を明らかにする。 DMBOK2 で定矩されおいるデヌタマネゞメントの知識領域を倧分類ずしお合蚈 77 個の質問項目を甚意し、それぞれ5段階評䟡を付けおその平均スコアをレヌダヌチャヌトにするずいう手法をずりたした。 DMMAスコア これらの質問ぞはデヌタマネゞメントに関わるメンバヌ、今回だずデヌタ゚ンゞニアが回答したした。 実務ずデヌタマネゞメントの知識領域ずの双方を把握しおいないず回答自䜓が難しく、たた実行可胜な改善蚈画を立おるため、デヌタ゚ンゞニアを䞭心に実斜したした。 DMMA 実斜によっお、以䞋の改善効果を埗るこずができたした。 知識領域ごずの匷み・匱みが明らかになる 定期的な DMMA の実斜により、デヌタマネゞメントの成熟床を枬るこずができる デヌタ基盀利甚者ぞのアンケヌトの実斜 先述の DMMA の実斜は䞻に開発者 (デヌタ゚ンゞニア) を察象ずしたものでしたが、こちらは利甚者を察象ずしたものです。 開発者からは芋えない芖点での評䟡・意芋を拟うこずが目的です。 アンケヌトの質問項目は、回答者のハヌドルを䞋げるために極力遞択匏ずしたした。(別途、自由蚘述の質問項目も蚭けおいたす) 質問の䞀䟋は以䞋になりたす。 䞻な利甚目的は よく利甚する呚蟺ツヌルは よく利甚するデヌタは 珟圚のデヌタ基盀に察する満足床は デヌタ基盀に぀いお珟圚盎面しおいる問題は アンケヌトの実斜によっお、利甚者の課題感・芁望が明らかになりたした。 具䜓䟋を以䞋に瀺したす。 様々なデヌタを同じデヌタ基盀䞊で扱いたい (耇数のデヌタを統䞀の SQL で参照したい) デヌタの関係性がわかりにくい (デヌタリネヌゞュ・メタデヌタの䞍足) KPI の蚈算匏を統䞀したい (分析者によっお SQL の蚘述方法が異なるため統䞀したい) デヌタの欠損が䞀郚あり、分析がしづらい (デヌタ品質の䞍足) 重点課題の蚭定 これら2぀の調査結果を統合し、デヌタマネゞメントの芳点で敎理した結果、解決すべき「5぀の重点課題」ずその解決゜リュヌションを定矩したした。 1. 非効率なデヌタ統合 GA4やSalesforceなど、事業䞊重芁ずみなされおいるデヌタが基盀に取り蟌たれおおらず、瀟内にデヌタが散圚サむロ化しおいる。 珟圚の S3 + Athena 構成では新しいデヌタの远加に䜜り蟌みが必芁で、気軜に远加できないため、デヌタ利掻甚者が耇数のシステムをたたいで手䜜業でデヌタを結合するなどの無甚な工数が発生しおいる。 2. ER 図の欠劂 テヌブル間の関係性キヌの結合やレコヌドの察応関係を盎感的に衚珟するER図が提䟛されおいない。 そのため、デヌタ基盀の利甚者にずっおテヌブル同士の関係が分かりにくく、デヌタ掻甚の障害ずなっおいる。 3. 䞍完党なデヌタリネヌゞ テヌブル間の掟生関係どのテヌブルから䜕が䜜られたかを瀺すリネヌゞは提䟛されおいるが、完党なものではない。 S3 + Athena 構成ではデヌタ倉換の自由床が高すぎおプロセスが統制されおいないため、䞀郚でリネヌゞが取埗できなくなっおいる。 4. 郚眲や担圓者ごずの KPI 蚈算の䞍䞀臎 事業䞊の䞻芁なKPIセッション数などの蚈算匏や条件が、郚眲や担圓者ごずに異なっおしたう問題が発生しおいる。 これはデヌタのサむロ化を招くだけでなく、利甚者が「正しいSQLの曞き方が分からない」ずいう悩みにも぀ながっおいる。 5. デヌタ品質テストの䞍足 デヌタ品質のテストがごく䞀郚でしか行われおおらず、䞍備があっおも長い間気づけないリスクがある。 実際に過去、カラム内容の䞍備が数週間発芋されず機械孊習モデルに圱響を䞎えた事䟋もあり、基盀に察する利甚者の信頌を損なう芁因ずなっおいる。 課題解決方針 アセスメントずアンケヌトによっお特定された5぀の重点課題に察し、私たちは単なる郚分最適ではなく、デヌタ基盀のアヌキテクチャ党䜓を芋盎す圢で以䞋のような解決方針を策定したした。 1. 効率的なデヌタ統合 倖郚デヌタ連携に匷みを持぀モダンなDWH補品の導入ず䜵せ、Fivetran や Airbyte などのデヌタ統合ツヌルを掻甚する。 これにより、GA4やSalesforceなどのサむロ化されたデヌタを、最小限の開発工数で䞀元管理できる仕組みの構築を目指す。 2. ER 図の自動提䟛 手動によるドキュメント運甚の限界を打砎するため、dbt などのデヌタモデリングツヌルを導入する。 コヌドDDLからER図を自動的に生成・曎新し続ける仕組みdbterdなどをパむプラむンに組み蟌み、デヌタの認知コストを䞋げる。 3. 完党なデヌタリネヌゞの確立 デヌタ倉換プロセスをすべお dbt 配䞋に集玄しおフロヌを統制し、デヌタの倉遷をトレヌス可胜な環境を構築する。 4. ビゞネスロゞック KPI の共通化 デヌタず利甚者の間に dbt Semantic Layer などの「セマンティックレむダヌ」を導入する。 郚眲ごずに散圚しおいたKPIの蚈算ロゞックを䞀箇所にコヌドずしお集玄し、党瀟で「信頌できる唯䞀の゜ヌスSSOT」を参照できる状態を確立する。 5. デヌタ品質テストの自動化 サむレントなデヌタ䞍備による信頌䜎䞋や䞋流ぞの悪圱響を防ぐため、dbt のテスト機胜をパむプラむンの実行フロヌに組み蟌む。 重芁なテヌブルやカラムに察する「非nullチェック」や「䞀意性チェック」を自動化し、異垞を早期発芋できる䜓制を敎える。 3. 技術遞定 前章の課題解決策ずしお「dbt」ずいう単語が䜕床か登堎したしたが、本章ではなぜ数あるツヌルの䞭から dbt を遞んだのか、そしおその実行基盀DWHずしおなぜ Databricks を遞定したのか、その詳现なプロセスを蚘茉したす。 dbt の採甚 dbt ずは Data Build Tool の略で、DWH 䞊でのデヌタ倉換Transformを SQL で管理するツヌルです。 https://www.getdbt.com/ SELECT 文を蚘述するだけで倉換凊理をモゞュヌル化でき、テストによるデヌタ品質の自動怜蚌、ドキュメントの自動生成、テヌブル間のリネヌゞ远跡ずいった機胜を暙準で備えおいたす。 解決すべき5぀の課題の倚くが「デヌタ倉換ずガバナンス」に集䞭しおいたため、以䞋の理由から dbt の採甚を早期に決定したした。 ELT アヌキテクチャぞのシフトによる工数削枛 埓来の Glue Job (PySpark) を䞭心ずした耇雑な ETL から、SQL を䞭心ずした ELT アヌキテクチャぞ転換した。これにより、耇雑な Spark コヌドのメンテナンスから解攟され、孊習コストを抑え぀぀開発スピヌドを最倧化できる ゚コシステムの成熟床ずポヌタビリティ 䞻芁な DWH ずの Adapter が公匏・コミュニティ双方で掻発に開発されおおり、将来的なむンフラの倉化にも柔軟に察応できる信頌性を評䟡した。 「デヌタ品質」ず「リネヌゞ」の暙準装備 DMMA で特に䜎スコアだったデヌタ品質ずリネヌゞの課題に察し、dbt test による自動怜蚌や、プロゞェクト構造から自動生成されるデヌタリネヌゞ機胜が決定打ずなった。 ビゞネスロゞックの䞀元管理 dbt Semantic Layer 等の掻甚により、郚眲間で散圚しおいた KPI 蚈算ロゞックを統合し、「信頌できる唯䞀の゜ヌスSSOT」を構築できる点を重芖した。 DWH 補品の遞定怜蚌プロセスず結果 dbt を導入するためには、圓時の構成S3 + Athenaでは公匏な Adapter サポヌトが䞍十分でした。 ※ 珟圚は dbt Labs による公匏サポヌトが提䟛されおいたす。 dbt のポテンシャルをフルに匕き出し、デヌタマネゞメントを Phase 2 以䞊ぞ進めるためには、実行基盀ずなる DWH 自䜓の刷新が䞍可避であるずいう結論に至りたした。 dbt を導入する土台ずなる DWH の遞定にあたっおは、候補ずなる耇数の䞻芁な DWH 補品の䞭から最終候補を2補品に絞り蟌み、実際のワヌクロヌドを甚いた PoC抂念実蚌を実斜したした。 怜蚌の進め方 今回の PoC では、単なる機胜比范に留たらず、゚ンゞニアによる技術怜蚌ず利甚者による UI 評䟡の䞡面からスコアリングを行いたした。 䞻な怜蚌項目ず評䟡 以䞋の芳点でスコアリングを行いたした。 具䜓的には、以䞋の 6 項目を重点的に怜蚌したした。 怜蚌カテゎリ 怜蚌内容䞀䟋 評䟡結果の芁玄 コスト ク゚リ実行、むンスタンス起動の費甚 Databricks が優䜍。同䞀シナリオにおいお、他の競合補品よりも䜎コストで実行可胜であるこずを確認。 デヌタロヌド S3 からのデヌタロヌド・倖郚テヌブル参照 いずれの補品も容易だが、Databricks は S3 䞊のデヌタを盎接参照・管理する芪和性が高い。 開発䜓隓 SQL / Python の蚘述、デバッグのしやすさ 競合補品は SQL 䞭心で掗緎されおいる䞀方、Databricks はノヌトブックによる Python / SQL の混圚開発に匷みを持぀。 ゚コシステム dbt 連携の安定性、呚蟺ツヌルずの接続 いずれの補品も dbt ずの芪和性は極めお高い。 ガバナンス カタログ、暩限管理、リネヌゞの自動化 Databricks の Unity Catalog による䞀元管理ず、自動生成されるリネヌゞを高く評䟡。 AI / 機械孊習 生成 AI 連携、ノヌトブックの AI 補助 Databricks が充実。AI アシスタントや Genie 等の機胜が豊富。 総合刀断 PoC での定量・定性的な怜蚌を経お、最終的に Databricks の採甚を決定したした。 以䞋の3点を評䟡したした。 1. オヌプンなデヌタ管理ずポヌタビリティ Databricks は S3 䞊に Delta Lakeオヌプンフォヌマット でデヌタを保持したす。 特定ベンダヌの独自ストレヌゞにロックむンされず、他の AWS サヌビスからも盎接デヌタを掻甚できるオヌプン性が、匊瀟の将来的なアヌキテクチャの柔軟性に合臎したした。 2. コストパフォヌマンスの良さ 倧芏暡なログデヌタを扱う匊瀟のワヌクロヌドにおいお、むンフラコストの効率性は重芁な怜蚎材料の1぀でした。 PoCにおける怜蚌の結果、同䞀の集蚈凊理シナリオにおいお、比范察象ずした補品よりも Databricks の方が玄 3 割ほどコンピュヌティング費甚を抑えお実行できる芋蟌みであるこずが分かりたした。 䞭長期的なデヌタ量の増加を考慮した際、このコスト効率の良さは奜たしい芁玠ずなりたした。 3. AI 掻甚ずデヌタ掻甚の民䞻化 怜蚌項目の1぀であった「AI 機胜」においお、Databricks の進化の速さを実感したした。 特に自然蚀語でデヌタ探玢が可胜な Databricks Genie 等の機胜は、デヌタ゚ンゞニアの工数を削枛し぀぀、非゚ンゞニアが自埋的に分析を行える「デヌタの民䞻化」を加速させるず感じたした。 4. 移行埌のアヌキテクチャ Databricks 移行埌の構成図は以䞋のようになりたした。 (以䞋、新デヌタ基盀ず呌びたす) 移行埌のアヌキテクチャ図 技術スタックも以䞋のようになり、ストレヌゞ以倖は党お倉化しおいたす。 ストレヌゞ: S3 デヌタカタログ: Unity Catalog ELT 凊理: dbt × Databricks SQL オヌケストレヌション: Databricks Lakeflow Jobs BI ツヌルなど: Databricks Dashboard これにより、先に挙げた5぀の重点課題に察する具䜓的な゜リュヌションを甚意できるようになりたした。 課題解決方針 具䜓的な゜リュヌション 1. 効率的なデヌタ統合 Databricks のマネヌゞドコネクタの利甚 2. ER 図の自動提䟛 dbterd や Databricks の Constraints による倖郚キヌの蚭定 3. 完党なデヌタリネヌゞの確立 dbt による高床なリネヌゞ機胜 4. ビゞネスロゞック KPI の共通化 dbt Semantic Layer や Databricks metric view 5. デヌタ品質テストの自動化 dbt の Data Test や Databricks の Anomaly detection その他、デヌタ゚ンゞニア芖点での倉化も挙げおおきたす。 メダリオンアヌキテクチャ を採甚。Bronze・Silver・Gold の各レむダヌでの責務境界を明確にした デヌタフォヌマットに Delta Lake を採甚。Liquid クラスタリングによるク゚リパフォヌマンスの最適化や、スキヌマ゚ボリュヌションによりスキヌマ倉曎の運甚コストが倧幅に削枛された オヌケストレヌションに Lakeflow Jobs を採甚。Airflow ほどの柔軟性はないがシンプルにたずたっおおり、Terraform での管理が可胜になった 5. デヌタ利甚偎の移行プロセスず工倫 結論から申し䞊げたすず、開発よりもこちらの移行䜜業のほうが倧倉だったず感じおいたす。 今回の移行察象は、利甚シヌンで倧きく 2 ぀のパタヌンに分けられたした。 他システムからのデヌタ基盀参照箇所の切り替え ダッシュボヌド内のデヌタ゜ヌスの切り替え 前者はコヌド管理されおいるので特定は容易でしたが、埌者は範囲が膚倧であったため、瀟内の党郚眲ぞのヒアリングが必芁ずなりたした。 長期的なスケゞュヌルを組むこずが予想されたため、以䞋のような段取りで進めるこずにしたした。 旧デヌタ基盀の利甚状況を党お䞀芧化する 利甚状況から各郚眲にヒアリングを行い、移行完了に必芁な䜜業工数を芋積もる 新旧デヌタ基盀の䞊行皌働期間を決める (= 旧デヌタ基盀の停止時期を決める) 旧デヌタ基盀の停止期限たでに移行しおもらう 旧デヌタ基盀の凊理を停止し、゚ラヌが発生しないこずを確認する 基本的には愚盎に進めるしかなかったのですが、少しでも効率化を図るために 4.の工皋を AI を甚いお短瞮化させる工倫をしたした。 具䜓的には「Athena SQL -> Databricks SQL に倉換するツヌル」を䜜成し、瀟内ホスティングの web アプリケヌションずしお公開したした。 実はこのツヌルは我々デヌタ゚ンゞニアではなくアナリストが有志で䜜っおくれたもので、そのほか様々な協力があっお移行をスムヌズに進めるこずができおいたす。 6. 改善効果 新デヌタ基盀ぞの移行はただ途䞭段階で、より重芁床の高いデヌタから順に進めおいたす。 5぀の重点課題の解決状況 党おの課題が解決枈みずいうわけではありたせんが、新デヌタ基盀ぞの移行により、それぞれの課題に察応するための土台・準備が敎いたした。 課題 状況 1. 非効率なデヌタ統合 🔧 導入基盀が敎備枈み 2. ER 図の欠劂 🔧 導入基盀が敎備枈み 3. 䞍完党なデヌタリネヌゞ ✅ 解決枈み 4. KPI 蚈算の䞍䞀臎 🔧 導入基盀が敎備枈み 5. デヌタ品質テストの䞍足 🔧 導入基盀が敎備枈み 課題 1 ず 3 に぀いおは、珟時点で改善が進んでいる郚分があるため、以䞋に補足したす。 1. 非効率なデヌタ統合 圓初は Fivetran や Airbyte などのデヌタ統合ツヌルの掻甚を蚈画しおいたしたが、移行期間䞭に Databricks の Lakeflow Connect が登堎し、採甚方針をマネヌゞドコネクタぞ切り替えたした。 Lakeflow Connect 本䜓の機胜掻甚に向けた基盀が敎っおいたす。 3. 䞍完党なデヌタリネヌゞ dbt 導入により、テヌブル間の䟝存関係がリネヌゞずしお自動的に可芖化されるようになりたした。 旧デヌタ基盀では、「テヌブル C の凊理はテヌブル A ず B のデヌタが出来䞊がっおからでないず実行できない」ずいった䟝存関係を Airflow の ExternalTaskSensor で個別に管理しおおり、テヌブルの増加ずずもに運甚が困難になっおいたした。 dbt のリネヌゞ機胜により、こうした䟝存関係の管理・把握が倧幅に改善されたした。 たた、Databricks の Unity Catalog のリネヌゞ機胜 を掻甚するこずで、テヌブル・カラム単䜍でのデヌタの流れを Databricks の UI 䞊で芖芚的に確認するこずも可胜になりたした。 利甚者・゚ンゞニアの声 匊瀟での Databricks の採甚は初めおであり、圓初は利甚者からの戞惑いの問い合わせも倚かったですが、埐々にうれしいコメントをもらえるようになっおきたした。 デヌタ基盀利甚者からの声 生成 AI 機胜 (Genie) が䟿利。ク゚リやダッシュボヌドを自分で䜜っおくれる Notebook を甚いた調査・怜蚌䜜業が楜になった。結果の共有もスムヌズに行える デヌタの問題調査がしやすくなった。Genie がテヌブルの䞭身を自ら探玢・分析しおくれるため、原因の特定たでの時間が倧幅に短瞮できる デヌタ゚ンゞニアからの声 テヌブル远加等の開発時の孊習コストが䞋がった。より倚くの゚ンゞニアが開発可胜になり、レビュヌアの負担も軜くなった dbt のリネヌゞ機胜が䟿利。デヌタ異垞発生時の圱響範囲が明確になり、埩旧オペレヌションも楜になった ダッシュボヌドなどの機胜が Databricks に集玄され、管理の手間が枛った 7. たずめ 今回の移行プロゞェクトにおいお、筆者は初期の課題蚭定の工皋がキヌだったず考えおいたす。 圓初は「デヌタ基盀を䜜り倉える」ずいう手段が先行しおいたしたが、䞀床立ち止たっお培底的に背景を深堀りしおいき、 開発者芖点だけでなく利甚者芖点での意芋も取り入れ、アンケヌト結果をスコアリングしお優先順䜍を付けお取り組んでいくこずの重芁性を䜓感できたした。 スタンバむのプロダクトや組織に぀いお詳しく知りたい方は、お気軜にご盞談ください。 www.wantedly.com
こんにちは。 ファむンディ株匏䌚瀟でテックリヌドマネヌゞャヌをやらせおもらっおいる戞田です。 生成AIが開発珟堎に入り蟌んでから1幎あたり。Claude CodeやGitHub Copilotなどの゚ヌゞェント型ツヌルも䞀般的になっおきたした。 その䞀方で、「AIを導入したのに、思ったほど速くなっおいない」「むしろレビュヌが倧倉になった」ずいう声を、瀟内倖でよく聞くようになりたした。 そんな䞭で先日、匊瀟䞻催の「AI Engineering Summit Tokyo 2026」にお 「速く䜜る」から「正しく䜜る」ぞ ─ 生成AI時代の開発フロヌ改革のロヌドマップず実行 ─ ず題しお登壇しおきたした。 ファむンディ瀟内で1幎匷かけお芋えおきた「AI導入の萜ずし穎」ず、そこから組み立おた3段階のロヌドマップを共有する内容です。 ai-engineering-summit-tokyo.findy-tools.io この蚘事では登壇内容を振り返り぀぀、AI導入の効果が䌞び悩んでいる組織に向けお、ファむンディがどのような順番で開発フロヌを䜜り倉えおきたかを玹介したす。 それでは芋おいきたしょう AIを入れたのに、アりトプットは䌞びおいなかった 「速く䜜る」だけでは限界がある AI掻甚レベル レベル 1AI゚ヌゞェントでコヌド生成 レベル 2AI゚ヌゞェントでモノを䜜る レベル 3AIで䟡倀を生み出す たずめ AIを入れたのに、アりトプットは䌞びおいなかった ファむンディも同様に生成AIの本栌掻甚を進め、Claude CodeやCodexなどのAI゚ヌゞェントが日垞的な開発フロヌに入り蟌んできたした。瀟内の䜓感ずしおは「1人あたりのPR䜜成数も増えおいそうだし、開発のリヌドタむムも短くなっおいるはず」ずいうものでした。 しかし、Findy Team+で1幎分の数倀を蚈枬しおみるず、想像ずは違う景色が芋えおきたした。 たずポゞティブな倉化ずしお、PR䜜成総数は前幎比で䌞びおいたした。ただ、その内蚳を芋るず、皌働メンバヌ数が玄1.5倍に増えおいたこずが倧きく、1人あたりのPR䜜成数はほが暪ばいだったのです。 さらに、レビュヌ開始からApproveたでの時間は前幎比でおよそ20分延び、PR1本あたりの平均コメント数・レビュヌ数も玄30%増えおいたした。AIによるコヌド生成が増えた䞀方で、レビュヌ偎の負荷が確実に積み䞊がっおいたわけです。 シニア局ず若手局で傟向を分けお芋るず、もう䞀段深い構造が芋えおきたした。AIの出力を読んで怜蚌できるシニアメンバヌはアりトプットが䞊がる䞀方、経隓幎数が浅いほどAI出力の合吊刀断に苊戊する傟向があり、結果ずしおレビュヌ偎に刀断の負荷が集䞭しおいたした。 組織党䜓ずしお、 AIに䜿われおいる 状態に近かったずも蚀えたす。「䜓感ず事実がズレおいるかもしれない」ず疑い、各皮数倀を可芖化しおいたからこそ、実は「1人あたりのPR䜜成数は増えおおらず、それどころかレビュヌの負荷が増えおおり、結果的に開発のリヌドタむムは長くなっおいた」こずに気づくこずができたのです。 「速く䜜る」だけでは限界がある 蚈枬結果から芋えおきたのは、「コヌドを曞く速床が䞊がっおも、ボトルネックがレビュヌに移り倉わったために、党䜓のリヌドタむムは短くならなかった」、ずいうこずでした。 AIでコヌドを曞くスピヌドは確かに䞊がりたす。䞀方で、内容を十分理解せずに生成するケヌスが増えるず、PRの䞀貫性や正確性が萜ちたす。 指摘の量が増えるず、リヌドクラスのレビュヌ時間が膚らみ、リヌドタむムが悪化したす。最終的に、トヌタルのアりトプットはAI導入前ずほが倉わらない、ずいう結果に着地したす。 AIの成果物に察する確認や怜蚌に時間がかかるようになり、レビュヌの負荷が増える。これがAI導入の萜ずし穎の䞀぀です。そのため、AIの成果物の品質を再珟性高く担保するための仕組みを敎えるこずが必芁になりたす。 そのために必芁になるのが、「正しい䜜り方ず手順」を仕組み化するこずです。銬を埡する銬具ハヌネスになぞらえ、AIの動きを暎走させず目的の方向ぞ導くための仕組みを敎えるこずを ハヌネス゚ンゞニアリング ず呌びたす。 このハヌネス化を、ファむンディは 開発フロヌ改革 ずしお進めおきたした。具䜓的には、AI掻甚のレベルを3段階に分け、土台から段階的に積み䞊げおいくロヌドマップを描いおいたす。 AI掻甚レベル 開発フロヌを分解し、AIで䜕を肩代わりできるかをマッピングするず、3぀のレベルが浮かび䞊がりたした。 レベル 1速く䜜る コヌド倉曎ずPR䜜成を䞭心に、AIで代替できる範囲を自動化する レベル 2正しく䜜る タスク分解ずIssue䜜成たでAIに任せ、「正しく䜜る」仕組みを敎える レベル 3必芁なものを䜜る 芁件定矩やQAずいう「AIで代替しづらい」ずされおきた領域に螏み蟌む ポむントは、「どれか1぀を単独でやる」のではなく、Lv1 → Lv2 → Lv3 ず段階的に積み䞊げお初めお効果が出るずいう点です。ここから各レベルを順に芋おいきたす。 レベル 1AI゚ヌゞェントでコヌド生成 レベル 1の目的は、コヌド倉曎ずPull request䜜成たでをAI゚ヌゞェントに任せ、人間は本質的なレビュヌに集䞭するこずです。 このフェヌズで真っ先に向き合う必芁があるのは、「AIが出したコヌドの責任は誰にあるか」ずいう問いです。 どれだけ自動化されおも、AIが出力したコヌドの責任は人間にありたす。品質ず刀断の最終責任は人間が匕き受けるこずになりたす。 その前提の䞊で、レベル 1の工皋を敎理しおみたした。 コヌド倉曎ずPull request䜜成はAIに党お任せるこずが出来たす。そしおレビュヌに関しおは、コヌドの責任ずいう芳点から人間が行う必芁があるず考えおいたした。しかし、本圓にそうなのか疑問に思いたした。 自分自身がコヌドを曞いおPull requestを䜜成しおいた頃を思い出しおみおください。自分でコヌドを曞いお、Pull requestを䜜成する。レビュヌ䟝頌を出す前にやっおいたこずがありたした。セルフレビュヌです。 そしおセルフレビュヌで気づく内容ず、実際に他のメンバヌからもらうレビュヌの内容は芳点や内容が違いたす。これを今回の開発フロヌ改革に圓おはめたした。 レビュヌをセルフレビュヌずレビュヌに分け、レベル 1ではセルフレビュヌたでをAIに任せるこずにしたした。セルフレビュヌではコヌド倉曎そのものに察するレビュヌ、レビュヌでは人間が最終刀断しないずいけない内容にフォヌカスしおレビュヌずいうように切り分けるこずにしたした。 ここで重芁なのは、AIを入れる前提ずしお「AIず関係なく圓たり前のこず」が揃っおいる必芁がある、ずいう点です。 アヌキテクチャ・呜名芏則・型定矩ずいったコヌド蚭蚈、十分なテストカバレッゞ、䞀貫した蚭蚈パタヌン、そしおPRの適切な粒床・レビュヌ文化・タスク分解の習慣。 これらはAI以前から品質を保぀ために必須でしたが、AI゚ヌゞェントが入るず䞀気に効いおきたす。土台が匱いず、AIはその匱さを増幅する方向に働くからです。 ファむンディがこの「土台」をどう積み䞊げおきたかは、次の蚘事で詳述しおいたす。 tech.findy.co.jp その土台の䞊に、AIが参照するドキュメントずルヌルをガヌドレヌルずしお敎備したす。 READMEやプロゞェクトドキュメントで開発前提・アヌキテクチャ・運甚ルヌルを蚘述し、AGENT.mdやrulesでコヌド芏玄・呜名芏則・テスト方針をAIに自動参照させ、カスタムコマンドやプロンプトテンプレヌトで䟝頌タスクを芏栌化する。 この敎備があっお初めお、AIは䜿い物になるコヌドを出力しおくれたす。 ファむンディではレベル 1を支える仕組みずしお、Claude CodeのSkillを耇数組み合わせおいたす。代衚的なものは次の通りです。 Pull request䜜成typechecklinttestbuildずいった品質チェックの自動実行、ブランチ呜名芏則の匷制、Conventional Commitに沿ったコミット生成、PRテンプレヌトからのbody自動生成たでを1コマンドで実行 Pull request䜜成前の自動セルフレビュヌセキュリティコヌド品質芏玄準拠Simplify芳点芁件怜蚌チェックリスト照合の6芳点で䞊列分析。信頌床の高い指摘のみを報告しおノむズを抑制し、2026幎4月時点で1500以䞊のPRで運甚䞭 AI䜵甚レビュヌCodex CLIを別系統ずしお䞊行運甚し、メむンAIのレビュヌず統合しおPRコメントに提瀺。AIの偏りに䟝存しない耇県チェックを実珟 定期セルフレビュヌ自動化平日の朝方にGitHub Actionsで起動し、盎近1ヶ月倉曎されおいない技術的負債ずなりうる既存コヌドに察しお修正Pull requestを自動䜜成 チェックリスト自動曎新過去レビュヌコメントをGitHub APIで収集し、LLMで指摘パタヌンを分類しおチェックリストぞ反映。レビュアヌの暗黙知をSkillに圢匏知ずしお残す セルフレビュヌ呚りの仕組みに぀いおは、それぞれ次の蚘事でも玹介しおいたす。 tech.findy.co.jp tech.findy.co.jp これらは1リポゞトリにSkillSub AgentMCPずしおたずめおおり、Pluginずしお運甚するこずで /plugin install によるワンコマンド配垃を実珟しおいたす。党員がcontributeできる構造にするこずで、改善がそのたた組織党䜓に反映される回り方になっおいたす。 レベル 2AI゚ヌゞェントでモノを䜜る レベル 1で「速く䜜る」の足回りが敎うず、次にぶ぀かるのが「芁件をどう実珟するか」の手順自䜓がAIフレンドリヌではない、ずいう壁です。タスクの粒床や手順を誰も明瀺的に決めおいないため、生成AIに䜕を枡せば粟床よく動くかが属人化しおいたした。 ここで必芁になるのが、「䜜りたいものWhat」ず「䜜り方の蚭蚈図How」を分離しお扱う発想です。 Whatをタスク分解の圢でHowに萜ずし蟌み、それをAIに枡せば、AIはそのステップどおりに実装しおくれたす。そしおレビュヌでは、出来䞊がったコヌドよりも先に「䜜り方ず実珟方法が合っおいるか」を怜蚌し、蚭蚈図のほうにフィヌドバックする。タスク分解の品質が、そのたたアりトプットの品質を決める構造です。 このフェヌズでは、AIずの関係性が「協働」から「委任」に倉わりたす。 Vibe Codingが「AIは隣で䞊走するパヌトナヌ」だずするず、Agentic Workflowは「AIは自走する実行゚ヌゞェントで、人間はその指揮者」になりたす。 任せる粒床も、1行〜1関数のレベルから、タスクPRフロヌ党䜓ぞず拡匵されたす。 Agentic Workflowの定矩ずしお4぀の自埋性を意識しおいたす。 ゎヌル指向 「䜕を」を䞎え、「どう実珟するか」はAIが組み立おる 蚈画ず分解 倧きなタスクをサブタスクに分けお順序付けお実行 ツヌル䜿甚 ファむル・Skill・コマンド・怜玢・MCPを胜動的に䜿う 自己怜蚌ルヌプ テスト倱敗→修正→再実行を自埋的に繰り返す 興味深かったのは、AI委任の前提が倉わるず開発環境そのものが倉わったこずです。 2026幎に入っおから、ファむンディではコヌド生成のメむンツヌルがIDEからタヌミナルぞ倉化したした。 1りむンドりで1タスクず぀進めるのではなく、耇数りむンドり・ペむンで同時にAIぞ委任するスタむルになったため、䞊列委任しやすい堎所ずしお、タヌミナルtmuxのような構成に自然ず寄せおいく流れになっおいたす。IDEの圹割はコヌドを曞く堎から、広域に枡るコヌドリヌディングや理解を深める堎ぞずシフトしおいたす。 このレベル 2を支えるのが、芁件構造化Issue自動生成のSkillです。次の6ステップで動きたす。 芁件理解 ─ むンタラクティブな質問で曖昧さを解消 コヌド探玢 ─ 䞊列の探玢Agentが耇数芳点で同時調査 芁件明確化 ─ 䞍足情報を補完しおスコヌプを定矩 蚭蚈提案 ─ 実装方針のドラフトを生成 タスク分解 ─ 実装単䜍に分解粒床刀定Skill連携 Issue䜜成 ─ Sub Issuerelationshipを含む構造化Issue このSkillで生成したIssueは环蚈3000以䞊にのがり、芪IssueFeature→子IssueDB局→API局などが blocked_by の䟝存関係付きで自動構成されたす。 䟋えば「ナヌザヌ通知機胜の远加」ずいう芪Issueに察し、「#1 DB局通知テヌブル远加」「#2 POST API远加」「#3 DELETE API远加」のような子Issueが、䟝存関係蟌みで䞀気に䞊ぶむメヌゞです。 実装フェヌズでは、これを「Issue × Worktree × Agent」の䞊列モデルで走らせおいたす。Team Lead Agentが blocked_by に埓っおLayerごずにWorker Agentを起動・同期し、同じLayer内はworktreeを切っおWorker Agentが完党䞊列で実装する。Layer 0でDB局が完了したら、Layer 1のPOSTDELETE APIを2぀のworktreeで同時に進める、ずいった動かし方ができたす。 この䞊列モデルの詳现は次の蚘事で解説しおいたす。 tech.findy.co.jp コヌドレビュヌの分担も、レベル 2では明瀺的に再定矩しおいたす。 担圓 レビュヌ領域 AI コヌド芏玄・呜名、型定矩、テストコヌド・テストケヌス 人間 ビゞネスロゞックの芁件適合、アヌキテクチャや蚭蚈、デヌタベヌス構造、明確なセキュリティリスク 芖点はコヌドそのものから抜象的なずころに寄せおいきたす。 結果ずしお、レベル 2の導入埌、1人あたりのPR䜜成数は前幎比で1.5倍を超えたした。AIフレンドリヌな「蚭蚈図タスク分解構造化Issue」を誰でも䜜れる状態になり、䜜りたいものを再珟性高くアりトプットできるようになった、ずいうのがその答えです。 レベル 3AIで䟡倀を生み出す レベル 2たで進むず、開発スピヌドに察する次のボトルネックが芋えおきたす。「䜕を䜜るか」の䞊流が詰たり、せっかく敎えた実装力を掻かしきれない状態です。 具䜓的には、芁件の実珟可胜性を調査できるのが゚ンゞニアだけになっおいたり、システムずプロダクトの抂念が離れおいお、お互いを十分知らないたた斜策や怜蚌が進んでしたったりしたす。 レベル 3の目的は、芁件定矩PdM領域ずQA領域ずいうAIで代替しづらいずされおきた領域に、AIで螏み蟌むこずです。 レベル 3の起点になるのが 珟状把握 です。珟状把握の察象は広い範囲に及びたす。コヌドベヌス・Google Analytics・プロダクト文曞・GitHub IssuesPR・Datadog・各皮KPIなど、必芁なコンテキストは倚岐にわたりたす。 たず芁件定矩では、これらを毎回手動で集めるのは珟実的ではないため、専門Agentチヌムが各゜ヌスから必芁な分だけ自動収集する仕組みを組みたした。 ファむンディの芁件定矩Skillでは、7぀の専門Agentが䞊列で動きたす。 目的・成果分析 ─ WHYWHAT仮説の自埋生成 デヌタ・コンテキスト収集 ─ GitHub Issues・Notionから数倀収集 プロダクト文曞抜出 ─ docs配䞋のKPI・ポリシヌを抜出 コヌドベヌス分析 ─ リポゞトリの制玄・パタヌンを分析 スコヌプ分割 ─ MVPず拡匵項目に分割 技術的実珟可胜性評䟡 ─ 解決アプロヌチの実珟可胜性を評䟡 アクセス解析デヌタ収集 ─ Google Analyticsから自動収集 これらのAgentがAgentTeamsずしお䞊列で皌働し、お互い䌚話しながら必芁な情報を集めお分析したす。 ナヌザヌは分析結果を修正・補足し、最埌にAIが構造化品質チェックしおGitHub Issueずしお出力したす。ナヌザヌ操䜜は入力・レビュヌ・承認の3回のみで、それ以倖はAIが自埋的に進める蚭蚈です。出力されたWHYWHAT構造化枈みIssueは、そのたたレベル 2のIssue自動分解Skillに連携できたす。 もう1぀の挑戊がQA領域です。ナヌザビリティ・アクセシビリティ・UIUXずいった非機胜芁件のテストはAI単独では難しいため、AIで代替しづらい領域です。ファむンディは「代替」ではなく「支揎」、぀たりAIがQA゚ンゞニアの刀断を最倧化する圢を仮説にしおいたす。 次にQA領域は3぀のSkillで䞀気通貫にしたした。仕様゜ヌスIssueFigmaNotionを入力に、次の流れで進みたす。 QA芳点抜出芳点を自動抜出しおQA芳点mdを出力 QAテストケヌス生成芳点→ステップ期埅結果前提条件に展開しおMarkdownCSV化 QA自動実行Playwright MCP経由でClaude Codeから盎接ブラりザを操䜜し、PassFailずスクリヌンショット付きのレポヌトを出力 QA芳点抜出では、仕様分析画面構造・UX探玢圱響範囲刀定の3぀のAgentが䞊列で動き、芳点蚭蚈のたたき台を数分で生成したす。 テストケヌス生成では、芳点→具䜓ケヌスぞの萜ずし蟌みにかかる工数が数時間から数分に短瞮されたした。生成されたQAリストは、認蚌・認可入力バリデヌション衚瀺・UIファむル操䜜倖郚連携メヌル送信の6軞で共通基準ず照合し、芳点挏れ・粒床のばら぀きを怜出したす。 人間が集䞭すべきは、ナヌザビリティ評䟡、䟋倖シナリオ、クラむアント芁件の確認ずいった「刀断が必芁な領域」です。反埩可胜なケヌスはAIが淡々ず実行し、倱敗時はスクリヌンショット付きレポヌトで原因特定が速くなりたした。 たずめ AI掻甚のレベルをレベル 1速く䜜るレベル 2正しく䜜るレベル 3必芁なものを䜜るず分けおきたしたが、最倧の䞻匵は、これらは「どれか1぀」ではなく段階的に積み䞊げお初めお成立する、ずいうこずです。 そしお、ここで匷調したいのが 順番を間違えない こずです。土台が匱いず、ガヌドレヌルもAI Skillも成果を出せたせん。ファむンディが螏んだ順番は次の4段でした。 裏返すず、AI゚ヌゞェントを入れる前にやっおおくべきこずは、AI以前から倉わっおいたせん。統䞀芏玄、テストコヌド、PR粒床、レビュヌなどの開発文化ずいった 基本の培底 こそがAI掻甚における倧前提です。 AI時代の本䞞は、「速く䜜る」ではなく、「正しく䜜る」「必芁なものを䜜る」ぞの段階的越境です。あなたの組織が今どのレベルにいるか、そしお次のレベルぞ進むためにどの土台が匱いかを確認する目安ずしお、このロヌドマップが圹立おば幞いです。 ファむンディでは䞀緒に䌚瀟を盛り䞊げおくれるメンバヌを募集䞭です。興味を持っおいただいた方はこちらのペヌゞからご応募お願いしたす。 herp.careers

動画

該圓するコンテンツが芋぀かりたせんでした

曞籍

おすすめマガゞン

蚘事の写真

SDV時代の「むネヌブラヌ」を目指す。パナ゜ニック オヌトモヌティブシステムズが远求する「゜フトりェア・ファヌスト」の本...

蚘事の写真

SDV時代の「むネヌブラヌ」を目指す。パナ゜ニック オヌトモヌティブシステムズが远求する「゜フトりェア・ファヌスト」の本...

蚘事の写真

死亡亀通事故れロぞ。アむサむトを支えるステレオ画像認識ず半導䜓内補の裏偎

新着動画

蚘事の写真

【解説】SNSで話題の「グラプンゞニアリング」の正䜓は / ルヌプ゚ンゞニアリングずの関係も解説

蚘事の写真

クラりドAIが䜿えない珟堎は、どうAIを"持぀"のか補造業の事䟋から孊ぶロヌカルAIFOCUSTUDIO

蚘事の写真

【ルヌプ゚ンゞニアリングずは】AIに自動で仕事を任せる前に決めるべき4぀のこず