Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
『SUUMO』における行動履歴ログの品質担保の取り組み / techplay221101_03...
Search
Recruit
PRO
November 01, 2022
Technology
1
3.2k
『SUUMO』における行動履歴ログの品質担保の取り組み / techplay221101_03_niibori
2022/11/01_リクルートが考える『意思決定に効くデータマネジメント』~アナリティクスエンジニア組織の立ち上げと事例紹介~での、新堀の講演資料になります
Recruit
PRO
November 01, 2022
Tweet
Share
More Decks by Recruit
See All by Recruit
事業の財務責任に向き合うリクルートデータプラットフォームのFinOps
recruitengineers
PRO
2
180
AI-DLCを現場にインストールしてみた:プロトタイプ開発で分かったこと・やめたこと
recruitengineers
PRO
2
250
プロダクトマネジメントの分業が生む「デリバリーの渋滞」を解消するTPMの越境
recruitengineers
PRO
3
880
あなたの知らない Linuxカーネル脆弱性の世界
recruitengineers
PRO
4
330
dbtとBigQuery MLで実現する リクルートの営業支援基盤のモデル開発と保守運用
recruitengineers
PRO
5
260
『ホットペッパービューティー』のiOSアプリをUIKitからSwiftUIへ段階的に移行するためにやったこと
recruitengineers
PRO
4
1.8k
経営の意思決定を加速する 「事業KPIダッシュボード」構築の全貌
recruitengineers
PRO
4
420
Browser
recruitengineers
PRO
12
4.1k
JavaScript 研修
recruitengineers
PRO
9
2.2k
Other Decks in Technology
See All in Technology
Kiro を用いたペアプロのススメ
taikis
4
1.6k
「もしもデータ基盤開発で『強くてニューゲーム』ができたなら今の僕はどんなデータ基盤を作っただろう」
aeonpeople
0
220
半年で、AIゼロ知識から AI中心開発組織の変革担当に至るまで
rfdnxbro
0
120
Agent Skillsがハーネスの垣根を超える日
gotalab555
6
3.8k
Entity Framework Core におけるIN句クエリ最適化について
htkym
0
110
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
4
810
ペアーズにおけるAIエージェント 基盤とText to SQLツールの紹介
hisamouna
2
1.5k
障害対応訓練、その前に
coconala_engineer
0
180
コンテキスト情報を活用し個社最適化されたAI Agentを実現する4つのポイント
kworkdev
PRO
1
1.9k
AgentCoreとStrandsで社内d払いナレッジボットを作った話
motojimayu
1
750
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
480
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
320
Featured
See All Featured
HDC tutorial
michielstock
0
260
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
120
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
41
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
88
How GitHub (no longer) Works
holman
316
140k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
2
2.7k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
150
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
89
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
96
Automating Front-end Workflow
addyosmani
1371
200k
The Invisible Side of Design
smashingmag
302
51k
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