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
50
WebView認証連携
mahiguch
0
67
メディアアプリLIMIAにおけるプッシュ通知配信システム
mahiguch
0
100
公式部活動技術書典部の活動紹介
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
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
0
250
ProxyによるWindow間RPC機構の構築
syumai
2
690
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
210
Azure SRE Agentで運用は楽になるのか?
kkamegawa
0
1.1k
Improving my own Ruby thereafter
sisshiki1969
1
150
Go言語での実装を通して学ぶLLMファインチューニングの仕組み / fukuokago22-llm-peft
monochromegane
0
110
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
1.3k
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
100
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
300
サーバーサイドのビルド時間87倍高速化
plaidtech
PRO
0
690
AI時代のドメイン駆動設計-DDD実践におけるAI活用のあり方 / ddd-in-ai-era
minodriven
25
9.7k
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
1k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
GitHub's CSS Performance
jonrohan
1032
460k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
111
20k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
284
13k
Thoughts on Productivity
jonyablonski
69
4.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
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で分析できる。 ご清聴、ありがとうございました!