Under the Hood of Scalable Apps at Coursera

Post on 06-Jul-2015

512 views 0 download

description

Presented to Silicon Valley iOS Developers meetup group Nov 18, 2014. Hosted at Coursera in Mountain View, CA. Notes: As you know, Coursera is a leader in online education with nearly a thousand online courses that you can watch on an iPad (and more). They've promised something interesting to share with us Monday as well: a look “Under the Hood of Scalable Apps” by iOS engineer Brandon Tram and Android engineer Michelle Wong. Thanks also to Paul Robinson and Saul Mora at Coursera for agreeing to host us!

Transcript of Under the Hood of Scalable Apps at Coursera

Under the Hood of Scalable Apps

Brandon Tram (btram@coursera.org)Michelle Wong (mwong@coursera.org)

• University of Waterloo

• Co-op program

• Mobile - iOS & Android

Universal Access to the World’s Best Education

Mobile @ Coursera

What about scaling up?Forget scale

SHIP IT

Coursera iOS 1.0

Scaling upHow do we

measure growth?

This legacy code is not so great…

What about adding X & Y?

Test? Test? Test?

New Methodologies

“86% of time is spent using apps, 14% is spent browsing”

Feature Modules

What about integrating large features?

Coursera Debug Tools

Activating Tweaks

• Employee verification

• Volume key

• Overlay icon

• Secret gesture

Tweaks: Other Examples

• Client-side

• FB Tweaks

• Remote

• GroundControl

• Rollout.io

Tweaks Challenges

• Defining a useable interface

• Activation method

• Changing app state at runtime

How do we measure growth?

Analytics Lifecycle

Eventing Platform

PartnersProduct Team

Analytics Team

Event: pause_clicked

Properties: - video id - video time - play back rate - subtitle language - volume

Metadata: - timestamp - app version - os version - etc

• 26% of all video views

• 6.5 million views

Mobile Metrics

60%14%

26%

iOS Android Web

Debug X-Ray

• Event key, metadata filtering

• Send to email, Google Drive

• Tweaks-enabled

Dispatch Sources

Dispatch Sources

Analytics Challenges

Takeaways

• You have a great app in production or market

• Scale team: feature flagging

• Scale user growth: accurate analytics tracking

Thank You!

btram@coursera.orgmwong@coursera.org