Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
『SUUMO』における行動履歴ログの品質担保の取り組み / techplay221101_03...
Search
Recruit
PRO
November 01, 2022
Technology
3.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
『SUUMO』における行動履歴ログの品質担保の取り組み / techplay221101_03_niibori
2022/11/01_リクルートが考える『意思決定に効くデータマネジメント』~アナリティクスエンジニア組織の立ち上げと事例紹介~での、新堀の講演資料になります
Recruit
PRO
November 01, 2022
More Decks by Recruit
See All by Recruit
AIネイティブ時代における 開発組織の役割と拡張の可能性
recruitengineers
PRO
2
230
開発が速く安くなった後の話 AI時代のソフトウェアエンジニアリング組織論 #devsumi
recruitengineers
PRO
44
31k
双方向推薦システムにおける長期的マッチング最大化に向けた代理目的関数の設計と実証
recruitengineers
PRO
1
160
就職⽀援サービスにおけるキャリアアドバイザーのシフトスケジューリング
recruitengineers
PRO
1
210
Model Routerを使った逐次LLM選択による毀損低減効果の検証
recruitengineers
PRO
2
83
ストリーム処理基盤のFlink移行検証と適材適所の実践
recruitengineers
PRO
2
120
AI 時代の Platform Engineering
recruitengineers
PRO
3
520
巨大プラットフォームを進化させる「第3のROI」
recruitengineers
PRO
2
3.7k
データ戦略を加速させる プラットフォーム エンジニアリングと進化的アーキテクチャ
recruitengineers
PRO
3
130
Other Decks in Technology
See All in Technology
Vポイント分析基盤におけるデータモデリング20年史
taromatsui_cccmkhd
4
790
エンタープライズデータへ安全につなぐ Production-ready なエージェント設計 ― AI × MCP リファレンスアーキテクチャ ― #AIDevDay
cdataj
1
170
AI研修(Day1)【MIXI 26新卒技術研修】
mixi_engineers
PRO
2
2.1k
『モデル + ハーネス』で読み解く AIエージェント入門
oracle4engineer
PRO
2
210
NYC Summit 2026 におけるAmazon Bedrock AgentCore のアップデート
ren8k
0
190
人手不足への挑戦:車両保全を支えるIoTとクラウド内製化の道【SORACOM Discovery 2026】
soracom
PRO
0
140
AI Agent を本番環境へ―― Microsoft Foundry × Azure Serverless で作る Enterprise-Ready な基盤
shibayan
PRO
1
620
信頼できるテスティングAIをどう育てるか?
odan611
0
130
13年運用タイトルのサーバーサイドが辿り着いた現在地 ― モンスターストライクにおける技術・組織・AI活用から得た知見
mixi_engineers
PRO
1
230
『モンスターストライク』 の運営に伴走する! データ民主化への 解析グループの3つのアプローチ
mixi_engineers
PRO
0
140
AI驚き屋発見器
yama3133
1
370
MCPをつなげて作る組織横断のAIエージェント基盤
tsubakimoto_s
0
210
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
640
Site-Speed That Sticks
csswizardry
13
1.4k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
Optimising Largest Contentful Paint
csswizardry
37
3.8k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
470
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
560
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
The Language of Interfaces
destraynor
162
27k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Transcript
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』における行動履歴ログの品質担 保の取り組み 1
データ推進室 データテクノロジーユニット D3M 部 HR/住まいD3Mグループ 新堀 秀和 2022/11/01
© Recruit Co., Ltd. All Rights Reserved 自己紹介 新堀 秀和
(にいぼり ひでかず) データ推進室 データテクノロジーユニット D3M 部 HR/住まいD3Mグ ループ グループマネージャー 2017年にリクルート住まいカンパニーに中途入社し、開発ディレクション 組織に配属。 入社して間もなく、データの利活用を推進する目的で、D3M 部の前身となるデータマネジメントグループの立ち上げに参画。 2021年 の会社統合後はHR領域と住まい領域のD3Mグループのマネージャーを 務めている。 好きな言語はPHP/JavaScript、好きなことはチームビルド/アジャイル カルチャー 2 #recruitdata
© Recruit Co., Ltd. All Rights Reserved まなび 領域 住まい
領域 データ推進室の組織構成 3 データテクノロジー ユニット SaaS 領域 データプロダクト ユニット HR 領域 データサイエンス部 データエンジニアリング部 … D3M (Data Driven Decision Making) 部 1. 白子 3.林田 2.新堀 山邉 データソリューションユニット #recruitdata
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』サービス 不動産クライアントとカスタマーを繋ぐメディア 4
#recruitdata
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』でのデータ利活用: 『SUUMO』では、メディア(Webサイト/アプリ)から取得できる行動履歴ログ(主に Webビーコン型のログ)を使って、
・機械学習を用いたリコメンドサービス開発 ・モニタリング(データマート/BI) 等に利活用している 5 Webサイト/アプリ Webビーコンロ グ 収集・加工・蓄積 (ETL, DWH,...etc) リコメンド サービス モニタリング #recruitdata
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』でのデータ利活用: 『SUUMO』では、メディア(Webサイト/アプリ)から取得できる行動履歴ログ(主に Webビーコン型のログ)を使って、
・機械学習を用いたリコメンドサービス開発 ・モニタリング(データマート/BI) 等に利活用している 6 Webサイト/アプリ Webビーコンロ グ 収集・加工・蓄積 (ETL, DWH,...etc) リコメンド サービス モニタリング #recruitdata アナリティクスエンジニアの主たる活動範囲
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』のフロント開発,データ開発 • フロント開発:
サイト/アプリメディアでは、マッチング向上(利便性向上等)の目的で、高頻度か つ継続的にSUUMOのUI/UX改善を実施 • データ開発: 行動履歴ログを使って、リコメンド/モニタリングなどを通してマッチング精度向 上 7 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』のフロント開発,データ開発 • フロント開発:
サイト/アプリメディアでは、マッチング向上(利便性向上等)の目的で、高頻度か つ継続的にSUUMOのUI/UX改善を実施 • データ開発: 行動履歴ログを使って、リコメンド/モニタリングなどを通してマッチング精度向 上 8 高頻度のUI/UX改善によりサイト/アプリが変更され、取得される行動履 歴ログが改変、リコメンドやモニタリングの障害原因となっていた #recruitdata
© Recruit Co., Ltd. All Rights Reserved Webサイト/アプリ Webビーコンロ グ
収集・加工・蓄積 (ETL, DWH,...etc) リコメンド サービス モニタリング なぜ、障害が発生するのか? • 行動履歴ログの埋め込みは、フロント開発で実施するが、フロント開発では行動 履歴ログがどのように使われているか把握できない • 結果、狙ったテストが実施できず、意図せずして、行動履歴ログが改変され、後続 のデータサービス障害が発生 9
© Recruit Co., Ltd. All Rights Reserved Webサイト/アプリ Webビーコンロ グ
収集・加工・蓄積 (ETL, DWH,...etc) リコメンド サービス モニタリング なぜ、障害が発生するのか? • 行動履歴ログの埋め込みは、フロント開発で実施するが、フロント開発では行動 履歴ログがどのように使われているか把握できていない • 結果、狙ったテストが実施できず、意図せずして、行動履歴ログが改変され、後続 のデータサービス障害が発生 10 【今日の話】 アナリティクスエンジニアが、フロントエンジニアと連 携して、行動履歴ログの品質担保
© Recruit Co., Ltd. All Rights Reserved 行動履歴ログの品質担保方法 ログ仕様(正解データ)を用意してテストする 11
#recruitdata
© Recruit Co., Ltd. All Rights Reserved 行動履歴ログの品質担保方法 ログ仕様(正解データ)を用意してテストする ただし、問題が、、、
• テストを実施すれば良いが、高頻度かつ継続的にサイト/アプリ開発を実施して いる中に、アナリティクスエンジニアが入ってテストを実施すると、改善スピード が阻害される 12 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 行動履歴ログの品質担保方法 ログ仕様(正解データ)を用意してテストする ただし、問題が、、、
• テストを実施すれば良いが、高頻度かつ継続的にサイト/アプリ開発を実施して いる中に、アナリティクスエンジニアが入ってテストを実施すると、改善スピード が阻害される → 自動テストで解決すれば良い 13 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 行動履歴ログの品質担保方法 ログ仕様(正解データ)を用意してテストする ただし、問題が、、、
• テストを実施すれば良いが、高頻度かつ継続的にサイト/アプリ開発を実施して いる中に、アナリティクスエンジニアが入ってテストを実施すると、改善スピード が阻害される → 自動テストで解決すれば良い 14 フロント開発で使えるE2E自動テストを組んで、行動履歴ログの品質担保 を実施 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 実際の取り組み内容と課題 E2Eテストフレームワークを使って、サイト/アプリの生成するWebビーコン型の行動 履歴ログが仕様通りの内容か、自動でテスト
①行動履歴ログの仕様管理 ②①を使って行動履歴ログの生成機能を自動テスト 15 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 実際の取り組み内容と課題 E2Eテストフレームワークを使って、サイト/アプリの生成するWebビーコン型の行動 履歴ログが仕様通りの内容か、自動でテスト
①行動履歴ログの仕様管理 ②①を使って行動履歴ログの生成機能を自動テスト 一般的なE2E自動テストと何が違うのか? 16 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 一般的な自動テスト 17 仕様書を作成
する テストコードを書 く テストを通す サイト情報 (URL/DOM) ログ 情報 結果確認 テスト 実行 テスト コード JS #recruitdata
© Recruit Co., Ltd. All Rights Reserved 課題(1) 仕様が更新されない 18
仕様書を作成 する テストコードを書 く テストを通す サイト情報 (URL/DOM) ログ 情報 結果確認 テスト 実行 テスト コード JS 更新されない #recruitdata
© Recruit Co., Ltd. All Rights Reserved 課題(1)の対応 : 仕様をテストコード管理
19 仕様をコード管 理 テストコードを書 く テストを通す 結果確認 テスト 実行 テスト コード JS サイト情報 ログ情報 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 課題(1)の対応 : 仕様をテストコード管理
20 仕様をコード管 理 テストコードを書 く テストを通す 結果確認 テスト 実行 テスト コード JS サイト情報 ログ情報 仕様を更新しないと、テストが通らないプロセス #recruitdata
© Recruit Co., Ltd. All Rights Reserved 課題(2) メンテナンスコストの高騰 21
仕様をコード管 理 テストコードを書 く テストを通す 結果確認 テスト 実行 テスト コード JS サイト情報 ログ情報 サイト改修のたび にエンハンス #recruitdata
© Recruit Co., Ltd. All Rights Reserved 課題(2)の対応 : テストコードの自動生成
22 仕様をDBに登 録 テストコードの 自動生成 テストを通す 結果確認 テスト 実行 テスト コード JS サイト情報 (URL/DOM) ログ情報 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 課題(2)の対応 : テストコードの自動生成
23 仕様をDBに登 録 テストコードの 自動生成 テストを通す 結果確認 テスト 実行 テスト コード JS サイト情報 (URL/DOM) ログ情報 テストコードの作成を不要にし、メンテナンスコストを抑制 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 実際の取り組み内容と課題 E2Eテストフレームワークを使って、サイト/アプリの生成するWebビーコン型の行動 履歴ログが仕様通りの内容か、自動でテスト
①行動履歴ログの仕様管理 → 仕様を更新しないと、テストが通らないプロセスを構築 ②①を使って行動履歴ログの生成機能を自動テスト → テストコードの作成を不要にし、メンテナンスコストを抑制 24 #recruitdata
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』における行動履歴ログのテストフロー 25 仕様をDBに登
録 テストコードの 自動生成 テストを通す 結果確認 テスト 実行 テスト コード JS サイト情報 (URL/DOM) ログ情報 ログ仕様をDBに登録するだけで、テストコードの作成が不 要で、テストを実行できるフロー #recruitdata
© Recruit Co., Ltd. All Rights Reserved 『SUUMO』における行動履歴ログのテストフロー 26 仕様をDBに登
録 テストコードの 自動生成 テストを通す 結果確認 テスト 実行 テスト コード JS サイト情報 (URL/DOM) ログ情報 UI/UX改善による、行動履歴ログの予期せぬ改変なし 改善スピードをほぼ損なうことなく、データサービスの障害も0件 #recruitdata
© Recruit Co., Ltd. All Rights Reserved まとめ • データ開発:
◦ 行動履歴ログを使って、リコメンド/モニタリングなどを通してマッチング精度向上 • フロント開発: ◦ マッチング向上(利便性向上等)の目的で、高頻度かつ継続的にSUUMOのUI/UX 改善を実施 行動履歴ログの予期せぬ改変により、データプロダクトの障害発生 27 このコンフリクトを解消するために、アナリティクスエンジニアが、フロント エンジニアと連携して、行動履歴ログの品質担保を実施 #recruitdata
© Recruit Co., Ltd. All Rights Reserved この後のセッション 28 講演資料などのハッシュタグ
#recruitdata イベント終了後にアンケートのご案内もあ りますので、是非ご回答をお願いします! #recruitdata