The presentation basically covers the use cases of how to follow a safer path when rolling out new features to the users. How Firebase as a tool, helped Hotstar to provide the safer approach and release the app gently to millions.
App: Release Gently - Feature Gates & A/B
▸ Rewrite the complete app from scratch. Why?
▸ Old codebase maintenance
▸ Handle the huge scale of 100+ million users.
▸ New features on old screens. e.g. Game on Old Watch Page
▸ Time crunch - IPL was coming!!
▸ Big Bang vs Progressive. Refer our blog: Rearchitecting apps for Scale
▸ Tech stack
▸ Feature Gate: Ability to turn ON/OFF a feature without requiring an app update
▸ Modular approach. But how to test both screens? Say New vs Old Search
▸ A/B Testing
▸ Users Targeting - Rolling out exclusive features only to certain audiences
▸ Support two Backends at the same time and switch depending upon the
▸ Service which would scale for millions having all the necessary infra already
available. 10+ million peak concurrency.
▸ Refer our blog here: App : Release Gently — Feature Gates & A:B
If the Path Be Beautiful, Let Us Now Ask
Where It Leads
HUNT FOR A SAFER PATH
▸ Changes behaviour of app at runtime
▸ Handles the caching by its own. Stores the conﬁg in FirebaseRemoteConﬁg
object when activateFetched is called.
▸ Release Gently and Feature Gating
▸ Quirks: Cache Expiration Time!!
Firebase Remote Config
New Watch Page
▸ Tons of features: ADs, Game, KeyMoments, Live etc.
▸ Old Watch vs New Watch Page
▸ Firebase Remote Conﬁg: Fail-safe approach
▸ Feature-Gate using Users in Random Percentile
▸ More than just a knob. Audiences, Events and A/B
▸ A/B Experiments based on Remote Conﬁg
▸ Optimisation Metric
▸ Roll out the leader
KHEL DEKH. GAME DIKHA.
▸ Gamiﬁcation on live streaming
▸ Supporting Android Jellybean & above
▸ Issue with Emoji on the day of IPL launch
▸ Firebase Audience to the rescue
▸ Users in Random Percentile
ITS ALL ABOUT THE PEOPLE
▸ Audiences help in creating a segment of users
▸ Segment can be created based on Event or User Properties
▸ We created the segment of users where Emoji was not working as expected
▸ We rolled out the Emoji to all except the affected ones thus preventing
unwanted behaviour on Watch Page
Firebase Audience Creation
EVENTS & USER PROPERTIES
▸ Firebase Events help in getting the insights of user actions
▸ User Properties are attributes which typically describe the segments of the user
▸ Firebase logs some properties and events automatically like App Version,
Country, Device Brand, Model etc.
▸ Log your own custom property as we did at Hotstar like build_ﬂavor
▸ Log Custom Event to measure your optimisation metric for A/B
Firebase Remote Config - Creating Condition
▸ Firebase Performance SDK
▸ Provides the insights of how your app is performing.
▸ Logs all the HTTP/S network requests automatically along with app start up time(traces)
▸ Breaks down the perf data based on Device Model, Carrier, OS Level, Country and App
▸ Provides the functionality to customise the traces for perf capturing like checking app
load time when new screen is created
▸ DebugView to view the logged events
We are Hiring.
Find more about openings, tech stack and key people here: