Upgrade to Pro — share decks privately, control downloads, hide ads and more …

データエンジニアの困りごとをDevinと一緒に解消する

Avatar for 10xinc 10xinc
September 03, 2026

 データエンジニアの困りごとをDevinと一緒に解消する

https://findy.connpass.com/event/403790/ での発表内容です。

Avatar for 10xinc

10xinc

September 03, 2026

More Decks by 10xinc

Other Decks in Technology

Transcript

  1. 自己紹介 • 吉田 康久 ◦ • Xやはてなidは@syou6162 / id:syou6162 株式会社10Xでデータエンジニア

    ◦ 2022/09に入社(5年目) ◦ プロダクト本部 データ基盤チームに所属 ◦ データマネジメント / データガバナンスの仕事をしてます • 京都から働いてます • これまでの職歴としては研究者(NLP & ML) => Webアプリケーションエンジニア, MLエンジニア => データエンジニ ア, Analytics Engineer • データ系のコミュニティが主戦場です ◦ datatech-jpの運営の一人です。Slackをベースに活動していて、ついに参加者が2000人を越えました ◦ dbt Community spotlightに選出されました ◦ Data Engineering Studyのアドバイザに就任しました 10X, Inc. ALL RIGHTS RESERVED 2
  2. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 3
  3. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 4
  4. 私とDevinの関わり方 • Devinはすごく気に入っていて、2025/02から約1年半使っている • 最初のDevinはそれほど頭がよくなかったので、Terraformのちょっとした修正をさせる程度しか任せていなかった ◦ • • 特に2025/06~2026/02の時期では、Claude CodeをメインのAIエージェントとして利用していた

    しかし、最近では9割はDevinと一緒に仕事をしている ◦ 今日話すようにデータエンジニアの仕事とDevinは相性がいいなと思うようになったため ◦ ちなみに、プライベートでもDevinのMaxプランを契約して使い倒している 先週のDevinConも参加してきました、今日もDevinConのTシャツを着て発表してます! 10X, Inc. ALL RIGHTS RESERVED https://x.com/cognition_jp/status/2094211600291078613 より 5
  5. とはいえ、私はDevinの営業担当ではなく、データエンジニア • データエンジニアとして、普段の業務をしている中での困りごとをまず紹介 • その困りごとをDevinと一緒にどのように解消していっているのかを紹介 ◦ データエンジニアリングの文脈でDevinがいかに役に立っているか ◦ Devin以外のAIエージェントを使っている人にも役に立つ話を盛り込んだつもりです ◦

    とはいえ、困りごとを解消するのに(少なくとも自分は)Devinが最適だと思っているので、随所にDevinの紹介 もしていきます • なお、本発表では親しみを込めて「Devinくん」という表現をよく使います Devinくんのかわいい 公式のキャラは カワウソらしい 10X, Inc. ALL RIGHTS RESERVED 6
  6. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 7
  7. Stailer AI発注概要 AI需要予測型アルゴリズムと、誰でも簡単に使える発注用モバ イルアプリを提供 • AI需要予測型アルゴリズム ◦ 最適な発注方式の選択 ◦ 客数予測

    ◦ 需要予測型による発注勧告数の推定 • 発注アプリ ◦ 片手で発注ができるモバイルアプリ • AIにより、単品毎に商品特性に応じた最適な発注方式を選 択 10X, Inc. ALL RIGHTS RESERVED 10
  8. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 11
  9. AI時代とデータエンジニア • • SWEと同じく、コードを書くのはAIエージェントに任せられる場面が増えてきた ◦ 例: SQLをdbtのモデルファイルとして書く ◦ 例: データ取り込みバッチのPythonで実装する

    ◦ 例: バッチの実行環境や権限付与をTerraformで実装する 楽になったようで、あんまり楽になっていない...? ◦ ◦ コードを作るのは早くできるようになったものの、手戻りしてしまう場面も増えてきた? ▪ 「これって作り方、これじゃないですよね?」 ▪ 「そもそもこれで解決したい問題って何でしたっけ?」 コードを書くところが実はボトルネックではなかった場面も多かったため、データエンジニアとしてのしんど さはトータルではあまり変わっていない 10X, Inc. ALL RIGHTS RESERVED 12
  10. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 14
  11. データエンジニアの困りごと: 仕様が明確でないことが多い • 例: 「配送関連の可視化をしたい」と依頼があった ◦ Slackで色々見たい内容を伝えられたが、困っている課題や解きたい問題がふんわりとしか分からない... ◦ 「こういうデータが欲しいのかなぁ」と思って、データマートを作成してダッシュボードを持っていく ◦

    「何か違うんだよなぁ」と言われたので、やり取りを追加でN往復 ◦ ようやく収束したか...と思ったら、1週間もせずダッシュボードは見られなくなっている... • 余談: アジャイルデータモデリングを読んで、BEAM*などのデータ要件を収集するテクニックを勉強しましょう • とはいえ、データに詳しくない人がデータに関する要件を言語化するのが難しい、というのはそもそもある 10X, Inc. ALL RIGHTS RESERVED 16
  12. データエンジニアの困りごと: 見ないといけない領域が広い • 「ダッシュボードの数字が出てない / 変な値が出てませんか?」と問い合わせがきたときに考慮しないといけないこ とが広域に渡る • ◦ 例:

    ダッシュボードの設定を変えた? ◦ 例: dbtの変換ロジックが変わった? ◦ 例: BigQuery / Google Cloudのインフラの調子が一時的に悪かった? ◦ 例: サーバーサイド / クライアントサイドのデータの生成ロジックに変更があった? 当然ながら、全てを把握するのは困難 サーバーサイド BigQuery dbt ダッシュボード クライアントサイド 問題があるのはどこ...? 10X, Inc. ALL RIGHTS RESERVED 17
  13. データエンジニアの困りごと: 長い依存関係のタスクが多い • • 単発の作業で済むことがあまりない ◦ 例: 必要なデータセット / サービスアカウントを発行し、Terraform経由で権限付与

    ◦ 例: Terraform経由でCloud Run Jobsを作成 ◦ 例: dbtでデータ変換のパイプラインを構築 ▪ dbtのモデルを作る ▪ LinterなどCI/CDの整備 ◦ 例: Cloud Schedulerで定期実行 ◦ 例: Datadogの監視設定 抜け漏れがないかの確認、どこまでタスク完了しているかの認知負荷などが積み重なっていくしんどさ ◦ どの作業は何が終わったら開始していいのか... 10X, Inc. ALL RIGHTS RESERVED 18
  14. データエンジニアの困りごと: 長い依存関係のタスクが多い データレイク 前提: dbtは役割によって複数層の レイヤリングに分かれていることが多い Staging Raw Vault Business

    Vault レビュアー: 全てのレイヤーに関わる内容を1つ の巨大なPull Requestで レビュー依頼されてもしんどい... 10X, Inc. ALL RIGHTS RESERVED Fact / Dim Data Mart 作業者: データ活用者が使う最終的なテー ブルの肌感を持ちながら 全体の開発をしたい... 19
  15. データエンジニアの困りごと: データが意図通りになっているか • コードの修正は簡単になった • 修正されたコードに基づいて生成されたデータが意図通りか? ◦ デグレしていないか ◦ 差分があれば、それは想定したものか

    ▪ ◦ その検証が簡単にできるのか? ▪ ◦ 差分は説明可能で納得できるものか? エージェントに検証させる場合、ハルシネーションを起こしたり、手順が毎回異なったりしないか? 検証を人間がやっていると、あっという間にボトルネックになる... 10X, Inc. ALL RIGHTS RESERVED 20
  16. データエンジニアの困りごとを大きく2つに分類 困りごと1: 曖昧なものをどう明確にしていくか • • 仕様が明確でないことが多い ドメインの理解に時間がかかる 困りごと2: 明確になった後のタスクの進め方 •

    • • 見ないといけない領域が広い 長い依存関係のタスクが多い データが意図通りになっているか Devinくんと一緒に解消 していっているかを 今日は話します ! 10X, Inc. ALL RIGHTS RESERVED 21
  17. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 22
  18. 曖昧なものをどう明確にしていくか • 解きたい問題がそもそも何か、どう作るかなどの自由度が大きく不確実性が高い状態 ◦ • • この段階は人間やチームで解きたい問題や解き方を明確にしにいくのが(少なくとも現段階は)よい ◦ 困っていることや課題は何か? ◦

    利害関係者は誰か? ◦ 出来上がったものはどう使われるイメージか? ◦ 作る上での制約は何があるか? 課題をヒアリングしたり、仕様書や設計書を書いたり、PoCとなる叩き台を作ったりして明確にしていく ◦ • この状態でAIエージェントに任せてもほぼうまくいかない、解空間が広すぎる このステップをAIエージェントにやらせてみよう! 曖昧のパターン ◦ 解き方が曖昧な場合 ◦ 仕様や解きたい問題が曖昧な場合 10X, Inc. ALL RIGHTS RESERVED 23
  19. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 24
  20. 解き方が曖昧だった事例: ビジネスロジックのSSoT化 • 10XではData Vaultを採用しており、ビジネスロジックおよび集計済みのモデルをBusiness Vaultで実装していた • ダッシュボードで{月, 週, 日}次、店舗別、店舗グループ別やその組み合わせなど様々な集計軸が存在する

    ◦ • GMVに代表される加算可能な指標は特に問題ない ユーザー数に代表される非加算可能な指標は集計軸ごとにdbtのモデルがほとんどコピペになっており、ビジネスロ ジックのSSoT化に失敗していた ◦ 例: COUNT(DISTINCT user_id)やMEDIAN ◦ 例: 日次のユーザー数を足し合わせても、月次のユーザー数と一致しない。複数日使っているユーザーを重複 カウントになってしまうため • その結果、似たようなロジックを持つdbtのモデルが多数できてしまっていたため、コードの見通しやメンテナンス 性が落ちてしまっていた ◦ ロジックが散らばっていることにより、同じようなdbtのテストが複数箇所で実施されており、コスト的にも 無駄が発生していた {月, 週, 日}次 x 店舗別 x 店舗グループ別の組み合わせで、ほぼ同じdbtモデルが大量発生...! COUNT(DISTINCT user_id)のような非加算可能な指標により、ビジネスロジックがSSoTにできていなかった😭 10X, Inc. ALL RIGHTS RESERVED 25
  21. Devinくん as チームメンバー • ビジネスロジックのSSoT化自体は考えられる解き方が複数あり、解き方が曖昧な状態であった ◦ ここに対する仕様書や設計書を考えていきたい、という段階 ◦ ただし、ドキュメントだけだと正直分かりにくいし、肌感も分からないし、メンバーもレビューしにくい。何 より自分も「これでいけそう!」という確証が持てない

    • チームメンバー + Devinくんで設計モブプロを行なうことにした ◦ • オフサイト開催時にオフラインで実施 「完成したプロンプトをDevinに入力する」ではなく「チームメンバーとの議論内容をDevinの音声入力に食わせる」 形を取った ◦ ちなみに私は普段のDevinくんとのやり取りの約9割は音声入力でやってます、肩凝りがマシになった気がする 10X, Inc. ALL RIGHTS RESERVED 26
  22. Devinの音声入力をフル活用 • 困っていることや課題感をチームメンバーと一緒に音声でdumpする ◦ • AIエージェント向け、ではなく普通に議論する。10~15分くらい話していることも 一定話し終えたら、話した内容をDevinくんに構造化して整理して出力してもらう ◦ 意図が伝わりきっていなかったら補足 ◦

    構造化してもらった内容を見た上で「そういえばこの観点で〜」という続きの議論もして、課題感を言語化し 切る • その上で課題感を解決する案をチームメンバー with Devinくんで考える ◦ 議論した上で「独自のmacroでwrapする(実装パターンとして複数パターン)」「dbtのMetricFlowを使う」 「dbtのSemantic Layerを使う」などの解決案が出てきた 構造化してまとめてみました! 10X, Inc. ALL RIGHTS RESERVED 27
  23. Devinの音声認識のTips • 私は普段京都から働いていて、同僚も関東でリモートワークしています ◦ • Chrome上でGoogle Meetで会話をしつつ、Devinの音声認識とすると、Devinまで音声が届かない ◦ • 音声認識する際に私と同僚は同じ場所にいないことのほうが多い

    エコーキャンセリングで届かなくなってしまっているっぽい... 同僚との会話はSlackのhuddleでやりつつ、DevinをChromeで立ち上げて音声認識してもらうことで解決! 東京 京都 複数人がオンラインで会話し ててもなんとかなるよ 10X, Inc. ALL RIGHTS RESERVED 30
  24. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 31
  25. 仕様や解きたい問題が曖昧な場合 • • 業務の課題を解決するためにBizDevやPdMから依頼されるのはデータエンジニアに日常的にあること ◦ しかし、その時に何を作ればいいかは曖昧 / 依頼者自身も分かっていない / 言語化が難しいことが多い

    ◦ 「きっとこういうものだろう」と思ってデータエンジニアが作っても「何か違うかも...」となることは多い ◦ ようやく収束したか...と思ったら、1週間もせずダッシュボードは見られなくなっている... こういうときにDevinとの会話セッションにステークホルダーを呼んで、一緒に会話すると便利! ◦ Devinと一緒に課題を聞いてもらった上で、ダミーのダッシュボードをその場でDevinに作ってもらう ◦ 実際のダッシュボードが形になると、ステークホルダーから色々注文が出てくる 10X, Inc. ALL RIGHTS RESERVED 32
  26. 最先端のCloud型AIエージェントであることの強み • • 「それClaude CodeやCodexでもできるよ」 ◦ ChromeやCodexでも音声入力が最近はサポートされている ◦ 成果物(Artifact)の共有も同様 その上でDevinのよいところ:

    Cloud型AIエージェントであり、セッションを共有できる ◦ 気になったら、自分の手元から音声やテキスト(スクリーンショットなどの共有も)で追加の指示ができる ▪ 自分の手元のキーボードが使えるので、ペアプロにありがちな「自分はEmacsキーバインドで、相手は Vimキーバインドで入力がうまくできなくて困った...😅」ということが起きない ◦ Devinの作業内容が自分の手元でも見える ▪ • 何かよくない方向に行っていないか、同僚に聞かずとも自分の手元でも確かめられる ◦ Devinの成果物を自分の手元でも確かめることができる ◦ 環境のセットアップも一度やるだけでみんなが使える(Blueprint) DevinはCloud型AIエージェントであり、同僚とコラボレーションしながら作業をする際に役に立つ! ◦ Cloud型AIエージェントはもちろん他にもあるが、DevinはCloud型AIエージェントの領域の最先端の先駆者 10X, Inc. ALL RIGHTS RESERVED 35
  27. Frontierモデルはどんどん進化していくが、Devin Fusionなら追従も楽 • 今週もFable 5.1が出たばかりだが、リリース当日にDevin Fusionも対応 • Frontierモデルに付いていくのに疲れた人ほど、Devin Fusionはオススメできる ◦

    • 今日も早速GPT-6 Astraが出ましたが、Devinユーザーはいつも通りDevin Fusionを安心して使うとよいです Frontierモデルが進化すればDevinも賢くなったり、お安くなり、メリットを享受できる https://devin.ai/blog/fable-5-1 より 10X, Inc. ALL RIGHTS RESERVED 38
  28. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 明確になった後でも、まだまだ面倒なことは多い... こういった領域をどうDevinくんと一緒に どう解消しているかを紹介します! 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 40
  29. 再掲: 見ないといけない領域が広い • 「ダッシュボードの数字が出てない / 変な値が出てませんか?」と問い合わせがきたときに考慮しないといけないこ とが広域に渡る • ◦ 例:

    ダッシュボードの設定を変えた? ◦ 例: dbtの変換ロジックが変わった? ◦ 例: BigQuery / Google Cloudのインフラの調子が一時的に悪かった? ◦ 例: サーバーサイド / クライアントサイドのデータの生成ロジックに変更があった? 当然ながら、全てを把握するのは困難 ◦ ほとんどのAIエージェント(Claude CodeやCodex)は1つのリポジトリを対象にスタートすることが多い ◦ 途中から対象が増えることもあるし、毎度--add-dirで追加しておくのはコンテキストの無駄 サーバーサイド BigQuery dbt ダッシュボード クライアントサイド 問題があるのはどこ...? 10X, Inc. ALL RIGHTS RESERVED 41
  30. リポジトリを横断した相談相手: Devin Wiki & Devin Ask • DevinはDevinWikiというインデックスを内部に保持 / メンテナンスしてくれている

    ◦ • 週次なり日時でインデックスを自動で更新してくれるので、追従も楽 DevinWikiの内容に基づいて、Ask Devinで質問をすることができる ◦ インデックスに紐付いているので、回答がかなり正確 & 早い...! ▪ • LLM Wikiが少し前に流行ったが、Devinはこれより前から同じようなことをしてくれている ◦ 回答の根拠になるコードベースも横に提示してくれるので、人間の判断もしやすい ◦ BizDevの人も結構Ask Devinを使っている 複数のリポジトリを横断した上でDevinが質問に回答してくれる ◦ これがめっちゃありがたい...! ◦ dbtのリポジトリはもちろん、データ取込バッチ / infra / サーバーサイド / クライアントサイドの変更まで ◦ 今のコードベースだけでなく、原因となったPull Requestまできちんと調査してくれる ◦ あちこち調べないといけない心理的障壁はかなり下がった! 10X, Inc. ALL RIGHTS RESERVED 42
  31. Devin Wiki & Devin Askを活用しながら、素早く調査に回答 クーポンの利用可能回数の 上限について知りたい (各リポジトリのインデックスを 参照しながら高速に調査します...) 利用回数の上限はリポジトリAで

    定義されています(コードのURL)。 インデックスは定期的に 自動更新します 上限が導入されたのはこのPull Requestです! インデックスA インデックスB インデックスC リポジトリA リポジトリB リポジトリC 10X, Inc. ALL RIGHTS RESERVED 43
  32. 障害発生時の影響範囲調査もDevinと一緒に: Devin Automation & Auto-triage • • • 早朝のバッチが失敗して、障害が起きた ◦

    障害原因の特定も大事だが、影響範囲の報告も当然必要 ◦ 人手が欲しいが、早朝は人も少ない... => Devinに手伝ってもらう Devinにdbtのリネージを解析した上で、影響あるデータマートやダッシュボードを列挙してもらう ◦ よくある手順はDevin Knowledgeにまとめておくと便利 ◦ 障害調査の属人性の排除にも役立つ まだ10Xではやれていないが、DatadogのアラートをトリガーとしてDevin Automationを起動し、影響範囲の調査を Devinが自律的にやることもできる ◦ よりSlackに特化したものとしてDevin Auto-triageというのもある 布団の中でアラートに気付いたとしても Devinくんに「今朝のdbtのバッチの 失敗調べておいて」で初動が楽になる! 10X, Inc. ALL RIGHTS RESERVED 44
  33. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 46
  34. 困りごと: 長い依存関係のタスクが多い データレイク 前提: dbtは役割によって複数層の レイヤリングに分かれていることが多い Staging Raw Vault Business

    Vault レビュアー: 全てのレイヤーに関わる内容を1つ の巨大なPull Requestで レビュー依頼されてもしんどい... 10X, Inc. ALL RIGHTS RESERVED Fact / Dim Data Mart 作業者: データ活用者が使う最終的なテー ブルの肌感を持ちながら 全体の開発をしたい... 47
  35. 解決策: DevinがNativeにサポートしているStacked PRsを使う • 大きな修正を複数の小さいPull Requestに分割して積んでいくStacked PRsという機能がGitHubで使えるようになった ◦ • •

    DevinもStacked PRsをNativeにサポートしている ベースで積んでいるprに修正があれば、その上に積んでいるprもDevinがよしなに修正してくれる ◦ PRのConflict自体もDevinが検知してくれるので、人間が教えてあげなくてよい ◦ Cloud型エージェントのよいところ 長い依存関係があるタスクでも、作業者 / レビュアー双方に優しい形でタスクを進められる! 一番下のPRからレビュー依頼し 自分はその次の以降のレイヤーの 作業をDevinと一緒に行なう レビュアーからの指摘で一番下のPRで 修正が必要だった場合、上のPRも Conflictしない形でDevinが修正してくれる! 多段になっていてもDevinが粘り強く 対応してくれる。実際に3~4段のStacked PR は日常的にすでに使っている 10X, Inc. ALL RIGHTS RESERVED https://x.com/jaredpalmer/status/2081022215424704560 より引用 48
  36. アジェンダ • 私とDevin • 背景: 10XとStailerについて • AI駆動開発とその現状 • データエンジニアの困りごと

    ◦ ◦ • 困りごと1: 曖昧なものをどう明確にしていくか ▪ 解き方が曖昧な場合 ▪ 仕様や解きたい問題が曖昧な場合 困りごと2: 明確になった後のタスクの進め方 ▪ リポジトリを横断した仕様の調査や障害の影響範囲 ▪ 長い依存関係のタスク ▪ データが意図通りになっているかの確認 まとめ 10X, Inc. ALL RIGHTS RESERVED 49
  37. 困りごと: データが意図通りになっているか • • • • • • コードの修正は簡単になった 修正されたコードに基づいて生成されたデータが意図通りか?

    ◦ デグレしていないか? ◦ 差分があれば、それは想定したものか? ◦ その検証が簡単にできるのか? 検証を人間がやっていると、あっという間にボトルネックになる... Devinにデータの検証をさせることももちろんできる ◦ プロンプトベースは確実に同じやり方をするとは言い切れない ◦ 検証をDevinにやらせるのはトークン代がかかってしまう... dbt専用のQA環境を作り、安く機械的に検証できるようにする ◦ dbt cloneを使うと、割と簡単にQA環境が構築できます ◦ QA環境を作った上で、修正前後の差分がどれだけあるか、差分がある場合はどのカラムかをスクリプトで計 算し、検証が決定的にできるように整備している 自社環境に接続したい場合: ◦ Devin CLIで手元環境で繋いである程度作業した上で、/handoffコマンドでDevin Cloudで続きの作業をさせる ◦ Devin Outpostsを使って、Devin Cloudから手元環境に接続させて確認させる手もある 10X, Inc. ALL RIGHTS RESERVED 50
  38. まとめ: データエンジニアの困りごとは解決されたのか? 困りごと1: 曖昧なものをどう明確にしていくか • • 仕様が明確でないことが多い ドメインの理解に時間がかかる 10X, Inc.

    ALL RIGHTS RESERVED 困りごと2: 明確になった後のタスクの進め方 • • • 見ないといけない領域が広い 長い依存関係のタスクが多い データが意図通りになっているか 51
  39. まとめ: 曖昧なものをどう明確にしていくか 困りごと1: 曖昧なものをどう明確にしていくか • • 仕様が明確でないことが多い ドメインの理解に時間がかかる 音声認識を駆使しながら、Devinに背 景や課題感を伝えていく

    Cloud型エージェントの強みを 生かして、同僚とコラボレーション しながら仕事を進める 10X, Inc. ALL RIGHTS RESERVED 困りごと2: 明確になった後のタスクの進め方 • • • 見ないといけない領域が広い 長い依存関係のタスクが多い データが意図通りになっているか チームメンバーと議論をしながら、Devinに整理して もらったり、PoCを作ってもらって、言語化や肌感を 得ながら、曖昧なものを明確にしていく Devin Fusionであれば、コストも 意識しつつ、大きな仕事でも一緒に仕 事をできる 52
  40. まとめ: 明確になった後のタスクの進め方 困りごと1: 曖昧なものをどう明確にしていくか • • 仕様が明確でないことが多い ドメインの理解に時間がかかる 困りごと2: 明確になった後のタスクの進め方

    • • • Devin WikiやDevin Askを生かして 広域な範囲も素早くキャッチアップ 日々の障害対応もDevin Automationで素早く初動対応 10X, Inc. ALL RIGHTS RESERVED 見ないといけない領域が広い 長い依存関係のタスクが多い データが意図通りになっているか 長い依存関係があるタスクでも Stacked PRで作業者 & レビュアーにも優しく QA環境や決定的な方法を整備して Devinが簡単に検証しやすいように 53
  41. まとめ: Devinはデータエンジニアの困りごとに立ち向かう同僚! 困りごと1: 曖昧なものをどう明確にしていくか • • 仕様が明確でないことが多い ドメインの理解に時間がかかる 10X, Inc.

    ALL RIGHTS RESERVED 困りごと2: 明確になった後のタスクの進め方 • • • 見ないといけない領域が広い 長い依存関係のタスクが多い データが意図通りになっているか 54