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
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)
Search
mahiguch
February 28, 2019
Programming
2
1.7k
Firebase A/B Testingを使ってサーバ側までA/Bテストした話(Android)
「potatotips #59 (iOS/Android開発Tips共有会)」での発表資料です。
https://potatotips.connpass.com/event/119277/
mahiguch
February 28, 2019
Tweet
Share
More Decks by mahiguch
See All by mahiguch
爆速で成長する おでかけ情報サービスの成長を支えるデザインと開発の取り組みについて
mahiguch
0
46
WebView認証連携
mahiguch
0
67
メディアアプリLIMIAにおけるプッシュ通知配信システム
mahiguch
0
98
公式部活動技術書典部の活動紹介
mahiguch
0
110
エンジニア以外の方が自らSQLを使ってセグメント分析を行うカルチャーをどのように作っていったか
mahiguch
1
1k
PHPからgoへの移行で分かったこと
mahiguch
2
4k
BigQueryを使った機械学習プロジェクトの分析とオフライン検証
mahiguch
2
1.2k
gRPCを使ったメディアサービス2
mahiguch
0
220
LIMIAでのBigQuery活用事例
mahiguch
0
200
Other Decks in Programming
See All in Programming
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
13
3.3k
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
350
TypeScriptでDXを上げろ! Hono編
yusukebe
3
890
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
890
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
1
850
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
770
フロントエンドのパフォーマンスチューニング
koukimiura
6
2.3k
Claude Code で Astro blog を Pages から Workers へ移行してみた
codehex
0
170
なぜあなたのオブザーバビリティ導入は頓挫するのか
ryota_hnk
4
520
AIコーディングエージェント全社導入とセキュリティ対策
hikaruegashira
15
8.7k
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
4
1.6k
Workers を定期実行する方法は一つじゃない
rokuosan
0
130
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
246
12k
YesSQL, Process and Tooling at Scale
rocio
173
14k
How GitHub (no longer) Works
holman
314
140k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How STYLIGHT went responsive
nonsquared
100
5.7k
The Cult of Friendly URLs
andyhume
79
6.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Balancing Empowerment & Direction
lara
1
510
Music & Morning Musume
bryan
46
6.7k
Being A Developer After 40
akosma
90
590k
Transcript
Firebase A/B Testingを使って サーバ側までA/Bテストした話 (Android)
Masahiro Higuchi / 樋口雅拓 • グリーグループのリミア株式会社で、LIMIA という住ま い領域のメディアを作っています。 • 機械学習のエンジニアですが、iOS,
Androidなどもやっ ている何でも屋です。 • 4歳の娘のパパ
背景と目的みたいなもの • A/BテストにFirebase A/B Testingを使っている。 • 色や形などデザインについてA/Bテストしていた。 • これって、サーバ側のA/Bテストもできるんじゃね? →
サーバのデータ取得APIのA/BテストをFirebase A/B Testingを使って やってみた事例を発表します。
何をA/Bテストしたか • 記事一覧を表示し、タップすると記事を閲覧でき る。 • 記事一覧はサーバから取得したデータを表示し ており、この並び順をA/Bテストする。 • コンバージョンとして、記事のタップを使う。
Firebase RemoteConfig設定 • RemoteConfigはKey-Valueストア。 • PCブラウザから設定できるので、企 画側で対応可能。 • Firebase A/B
Testingでは、直接的に は指定したRemoteConfig keyの値 が変更される。 • そこでデータを取得するAPI毎に RemoteConfig keyを作成する。
Firebase RemoteConfigからのデータ取得コード defaultはリソース ファイルに保持し ておき、 RemoteConfigか ら非同期に値を取 得します。
HTTPリクエストのQueryStringに追加 QueryStringにRemoteconfigから取得したパラメータを追加します。 サーバ側では、そのパラメータを使って処理を分けます。
Firebase A/B Testing設定 • ユーザグループAとBに送られる RemoteConfigの値を設定しま す。 • PCブラウザから設定できるので、 企画側で対応可能。
テスト結果 PCブラウザから結果を確認で きる。 設定から結果確認までPCブラ ウザで出来るので、エンジニ アが開発に集中できる!
テスト結果分析 A/Bテストでどちらのセグメントに振り 分けられたか、UserPropertyに設定さ れます。keyは次のようになります。 firebase_exp_<ABテスト番号>
5メディア全てでFirebaseを使ってます。 絶賛仲間募集中! グリーグループには全5メディアあり、Firebaseを使う事に よって横比較が可能になった。 mogna
まとめ • Firebase A/B Testingを使ってサーバまでA/Bテストできた。 • PCブラウザから設定出来るため、企画だけでA/Bテスト可能に。 • テスト結果はUserPropertyに設定されBigQueryで分析できる。 ご清聴、ありがとうございました!