⼀⼈三役!
⼀気通貫でデータ活⽤する
エンジニアリング
Michihisa HIRATSUKA
24, Jan, 2018
• 平塚 迪久(ひらつか みちひさ)
• 2016年新卒⼊社
• ⼊社後のエンジニア仕事:
– インフラ整備
– 機械学習バッチ開発
– ABテスト基盤の構築
– ABテストの企画・開発
2 ⾃⼰紹介
データ活⽤施策の
難しさとは?
4 施策の検証サイクルが回らない
その施策、
実装に4ヶ⽉
かかります
+ =
◯◯
やりましょう
5 お話すること
• データ活⽤施策を検証する基盤
– 施策を検証する場所
– 施策を検証する仕組み
• データ活⽤施策の流れ
6 お話すること
• データ活⽤施策を検証する基盤
–施策を検証する場所
–施策を検証する仕組み
• データ活⽤施策の流れ
7 データ活⽤施策とは、 仮説検証のサイクル。
仮説・分析・開発が密接に結びついたもの
プランナー エンジニアサイエンティスト
8 データ活⽤施策とは、 仮説検証のサイクル。
仮説・分析・開発が密接に結びついたもの
プランナー エンジニアサイエンティスト
ビジネス予約
を増やそう!
9 データ活⽤施策とは、 仮説検証のサイクル。
仮説・分析・開発が密接に結びついたもの
プランナー エンジニアサイエンティスト
ビジネス予約
を増やそう!
ビジネスログ
収集します
10 データ活⽤施策とは、 仮説検証のサイクル。
仮説・分析・開発が密接に結びついたもの
ビジネス予約
を増やそう!
ビジネスログ
収集します
平⽇昼間が
狙い⽬では?
プランナー エンジニアサイエンティスト
11 データ活⽤施策とは、 仮説検証のサイクル。
仮説・分析・開発が密接に結びついたもの
リアルタイムAPI
作れます
プランナー エンジニアサイエンティスト
カップルは
露天⾵呂が
CV⾼い
12 データ活⽤施策とは、 仮説検証のサイクル。
仮説・分析・開発が密接に結びついたもの
リアルタイムに
露天⾵呂
レコメンドだ!
リアルタイムAPI
作れます
プランナー エンジニアサイエンティスト
カップルは
露天⾵呂が
CV⾼い
13 データ活⽤施策とは、 仮説検証のサイクル。
仮説・分析・開発が密接に結びついたもの
施策
プランナー エンジニアサイエンティスト
14 プロダクトには
仮説検証とは別のサイクルがある
施策
プランナー エンジニアサイエンティスト
キャンペーン中別機能の
テスト中
15 プロダクトには
仮説検証とは別のサイクルがある
施策
プランナー エンジニアサイエンティスト
キャンペーン中別機能の
テスト中
検証サイクルを早く回す
検証基盤がほしい
17
LP 予約
入口
(Apache)
チーム保有の
検証⽤LP基盤開発
じゃらん本体(オンプレ)
流入
18
流入 LP 予約
じゃらん本体(オンプレ)
LP
入口
(Apache)
GCP環境(クラウド)
チーム保有の
検証⽤LP基盤開発
19
Kubernetesを⽤いた
サーバー環境の構築
• スケーラブル
• 切り戻し・デプロイが簡単
• Docker化で開発も短期間
• 環境の複製が簡単
20
21 静的コンテンツ配信
LPごとに
環境複製
(要件違いに
対応)
22 Kubernetesに⼊⾨するなら
https://qiita.com/mihirat/items/ebb0833d50c882398b0f
施策の検証基盤ができた。
簡単に検証できる仕組みもほしい
24
データ活⽤施策反映は
すぐにはできない
分析・機能開発
リリース
25
データ活⽤施策反映は
すぐにはできない
分析・機能開発
リリース
本当に
効果あるの?
売上下がったら
困る…
26
データ活⽤施策反映は
すぐにはできない
分析・機能開発
リリース
ABテスト
27 ABテストによる施策効果検証
AB
振分
A
B
C
X
レコメンド1
レコメンド2
新機能
オリジナル
webサービス
ユーザー
28 ABテストによる施策効果検証
AB
振分
A
B
C
X
レコメンド1
レコメンド2
新機能
オリジナル
29 ABテストによる施策効果検証
AB
振分
A
B
C
X
レコメンド1
レコメンド2
新機能
オリジナル
30 ABテストによる施策効果検証
A
B
C
X
レコメンド1
レコメンド2
新機能
オリジナル
CVR↑、採用!
要改善!
31 ABテスト環境の構築
https://www.slideshare.net/RecruitLifestyle/
ngxmrubyab
• yamlで設定
– トラフィック分配
– テスト期間
– 対象デバイス
– etc
32 お話すること
• データ活⽤施策を検証する基盤
– 施策を検証する場所
– 施策を検証する仕組み
• データ活⽤施策の流れ
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、サーバーエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
⼀⼈三役?
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、バックエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、バックエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
無理😇
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、バックエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、バックエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
施策反映ABテストにおける
それぞれの役割
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、バックエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
• プランナー
– トレンドウォッチや競合⽐較
– 各種リソースの調整
• サイエンティスト
– ユーザー⾏動ログの分析
– 予測モデルの開発
• エンジニア
– 新しいアルゴリズムの実装
– リアルタイムログ連携の開発
42 仮説だし・基礎分析・企画
Tensorflowで
こういうレコメンド
やれそうです!
Dataflowで
こういう機能
作れそうです!
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、バックエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
• プランナー
– 案件マネジメント
• (デザイナー)
– 画⾯デザイン作成
• サイエンティスト
– 予測モデルの実装
• エンジニア
– データ更新処理(バッチ、リアルタイム)
– フロント /サーバーでのAPI処理
44 各種開発スタート
予測モデルを
バッチ処理で回す
Ajaxでの
API呼び出し
新LP⽤に
サーバー開発
・仮説だし・基礎分析・企画
・デザイン作成
P S E
S ・データ取得
・API開発
E
E
フロントエンド、バックエンド開発
E
QAテスト、本番デプロイ
P
・モニタリング、振り返り
P S E
• プランナー
– 各部署への連絡
– ビジネス指標モニタリング
• サイエンティスト
– 結果の深掘り分析
• エンジニア
– テスト仕様書の作成、テスト
– デプロイ
– エンジニア指標モニタリング
46 仕上げ、振り返り
監視系の設定
切り戻しの準備
つまり
48 環境が整い、検証が⾼速に回せる
P EP S ES E E P ES
Before After
49 筋のいい施策を⼤きく展開して効果⼤
検証フェーズ
(検証基盤)
展開フェーズ
(本体)
50
検証サイズが⼩さくなり、
(頑張れば)⼀⼈でも⼀気通貫できる
P
S
E
• ⼀気通貫でデータ活⽤するために
• 施策検証の場を作り
• 検証サイクルを回しています
• 事業直結のエンジニアリングに興味があれば
• Join us!
51 まとめ

一人三役!一気通貫でデータ活用するエンジニアリング