Build resilient systems at scale
May 27–29, 2015 • Santa Clara, CA

Lessons learned growing from 1 Million to 13 Million users in 9 months

Benny Wong (Timehop)
2:35pm–2:55pm Wednesday, 05/27/2015
Location: Ballroom GH
Average rating: ****.
(4.67, 3 ratings)
Slides:   1-PDF 

Prerequisite Knowledge

Attendees should have experience with different apps and how they perform. They will have seen what issues can arise on a small scale but have not gone through a huge amount of scaling. Attendees who will get the most out of this are people who are going through the growing pains of the platform.

Description

The amount of our personal data exhaust generated over the past few years is staggering, yet our ability to access it in a useful way has lagged behind. Timehop is a mobile app that exposes that data in a way that’s consumable and fun. Over the past nine months, we’ve grown from 1 million to 13 million users – with a bunch of 3am pages along the way.

Timehop’s technology stack looked a lot like any other startup’s stack: A single Ruby on Rails application deployed to Heroku using Postgres and some MongoDB. We now have a service-oriented architecture with a lot of Go and massively scaled datastore using DynamoDB.

In this talk, Benny Wong, cofounder and CTO of Timehop, will talk about how Timehop survived 13x growth in a matter of months. Specifically:

  • Scaling as a function of capacity. You can only make apps so fast. (which leads to the next point)
  • Measure everything. And then figure out what actually matters
  • Be in the driver seat. A degraded experience is better than no experience
  • Great engineers are not a “nice to have”
  • Avoiding The Big Rewrite™. Chunk out the on-fire component pieces into manageable migrations. Make integration points easy and seamless (ie. using Resque job definitions)
  • But! Don’t over-componentize and over-service-ize. It comes at a real cost (especially with only two backend engineers)
  • Run the numbers and know when to pay the Pros™ (ie. DynamoDB)
  • Simplify deployment

Benny Wong

Timehop

Benny Wong is a cofounder and CTO at Timehop. Having built Timehop from a hackathon project through to an app with millions of daily active users, Benny has seen and worked in every part of the stack.

Prior to starting Timehop, he was the tech lead at Gilt Groupe where he launched the Gilt City product. Before that he wrote code in finance and did not much enjoy it.