the startup hangover supporting 15 mil users...impersonators/stubs/ mocks for everything we can...

65
The Startup Hangover: Supporting 15 mil users Phil Calçado - SoundCloud @pcalcado http://philcalcado.com Wednesday, May 23, 12

Upload: others

Post on 25-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

The Startup Hangover:Supporting 15 mil users

Phil Calçado - SoundCloud@pcalcado

http://philcalcado.comWednesday, May 23, 12

Page 2: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

ohai!

i’m phil.

Wednesday, May 23, 12

Page 3: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

i work here:

Wednesday, May 23, 12

Page 4: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 5: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 6: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

Wednesday, May 23, 12

Page 7: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

Wednesday, May 23, 12

Page 8: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law of nature

Wednesday, May 23, 12

Page 9: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law of nature

Wednesday, May 23, 12

Page 10: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 11: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 12: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 13: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 14: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 15: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 16: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 17: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

how to survive?

Wednesday, May 23, 12

Page 18: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 19: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 20: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 21: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

~2008

App

Wednesday, May 23, 12

Page 22: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

App

~2011

Wednesday, May 23, 12

Page 23: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law of nature

Wednesday, May 23, 12

Page 24: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

no point infighting nature

Wednesday, May 23, 12

Page 25: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Service A Service B

Service C

Wednesday, May 23, 12

Page 26: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

teams are built around goals, not systems

Wednesday, May 23, 12

Page 27: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

making layers explicit

Wednesday, May 23, 12

Page 28: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

a set is a collectionof your sounds

Wednesday, May 23, 12

Page 29: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

add other users’ sounds to a set

Wednesday, May 23, 12

Page 30: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

application layervs.

domain layer

Wednesday, May 23, 12

Page 31: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

teams are end-to-end

Wednesday, May 23, 12

Page 32: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

great for“lateral hires” to a team

Wednesday, May 23, 12

Page 33: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

you built it?you support it

Wednesday, May 23, 12

Page 34: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

automate yourself out of support

Wednesday, May 23, 12

Page 35: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

async by default

Wednesday, May 23, 12

Page 36: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 37: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

pull requests or pairingas

code review

Wednesday, May 23, 12

Page 38: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 39: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

short-lived branch

Wednesday, May 23, 12

Page 40: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 41: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

branch goes green

Wednesday, May 23, 12

Page 42: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 43: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

discussion

Wednesday, May 23, 12

Page 44: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 45: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

use the best tool for the job, but practice empathy

Wednesday, May 23, 12

Page 46: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

no-brainer choices:ruby, go, scala, java, R

Wednesday, May 23, 12

Page 47: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

our fav outliers:node.js, clojure, haskell, python

Wednesday, May 23, 12

Page 48: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

everyone is an architect

Wednesday, May 23, 12

Page 49: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

bad calls are ok, gather feedback fast and make sure we can revert it

when needed

Wednesday, May 23, 12

Page 50: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

end-to-end testing before checking in code

Wednesday, May 23, 12

Page 51: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

impersonators/stubs/mocks

for everything we can

Wednesday, May 23, 12

Page 52: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

and we often can

Wednesday, May 23, 12

Page 53: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 54: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

product manageris a benevolent dictator

Wednesday, May 23, 12

Page 55: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

and they often can code

Wednesday, May 23, 12

Page 56: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

20% time is sacred

Wednesday, May 23, 12

Page 57: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

just don’t have the whole team going away at once

Wednesday, May 23, 12

Page 58: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

no multi-tasking

Wednesday, May 23, 12

Page 59: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

everyone is a singletonWednesday, May 23, 12

Page 60: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

“done” means someone is using it(a.k.a. continuousdeployment)

Wednesday, May 23, 12

Page 61: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

cycle time: ~3 days

Wednesday, May 23, 12

Page 62: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

law we make up

measure all the things

Wednesday, May 23, 12

Page 63: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Wednesday, May 23, 12

Page 64: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

Qs?

Phil Calçado - SoundCloud@pcalcado

http://philcalcado.comWednesday, May 23, 12

Page 65: The Startup Hangover Supporting 15 mil users...impersonators/stubs/ mocks for everything we can Wednesday, May 23, 12. and we often can Wednesday, May 23, 12. Wednesday, May 23, 12

http://bit.ly/work-at-soundcloud

Wednesday, May 23, 12