A centralized team in a decentralized world:Engineering tools at Netflix
Mike McGarr @SonOfGarr
increase the # of
delighted customerswhile decreasing
support waste
increase rate of
innovationwhile decreasing the
impact of change
our customers are engineers
highly aligned, loosely coupled
we build products
one paved roaddoes not fit all
wide spectrum of needs
be your own customer
you build it, you support it
sometimes tools break
optimize
communicationchannels for customers
more than five minutes
we have avoidedticketing systems
make creating a ticket
easy
minimize context switching
tool stagnation4 tools don't evolve
4 customers want new features
4 "it works, why change it"
4 lacks organization alignment
distribute innovation
institutionalize innovation
"...hiring managers should staff beyond the bandwidth needed for known tasks.
1Daniel Jacobson, Netflix
hire beyond your needs
make space for innovation
2014 migrations4 Perforce to git
4 Java 6 to Java 7
4 Shard Jenkins
4 Evacuate the data center
so we're done...right?
2015 migrations4 Ant to Gradle
4 CentOS/Precise to Trusty
4 Asgard to Spinnaker
4 Tomcat 6 to 7 (or is it 8, or 9?)
4 Java 7 to Java 8
change is the only constant
targeted communication
beyond email
4 hipchat banners
4 posters
4 blesk notifications
4 http://go/migrations
evolve your message
"Wanted: beta testers"
"production ready"
"a cure for what ails ye"
"deprecation warning: the end is nigh!"
"you are the last to go"
"let's help you finish"
make continuous change easy
understand your customers
develop a customer support model
make space for innovation
make continuous change easy
we're hiringSenior Gradle Engineer - click to apply
Senior Full Stack Engineer - click to apply
email me - mmcgarr@netflix.com
image attributions: http://bit.ly/1KrwACQ
github repo: https://github.com/jmcgarr/centralized-teams-talk