ERP 101 Series: Engineering Revisions and Engineering Change Order (ECO)
Engineering Change
-
Upload
kellan -
Category
Technology
-
view
1.955 -
download
3
Transcript of Engineering Change
Engineering Change: Enable rapid experimentation
Kellan Elliott-McCrea@kellanCTO, Etsy
Thursday, May 17, 12
* A marketplace for handmade and vintage goods.
In April 2012
* 875,000 artisans and creative independents* $63.6 million USD in sales* 1.32 billion page views
Thursday, May 17, 12
Engineering Change:
* Continuous Deployment* Metrics driven development
Thursday, May 17, 12
Engineering Change:
* Make mistakes quickly* Learn from mistakes
Thursday, May 17, 12
Engineering Change:
* Continuous Deployment* Metrics driven development
Thursday, May 17, 12
Continuous Deployment:
a technique for rapid iteration
Thursday, May 17, 12
Continuous Deployment:
make failure cheap
Thursday, May 17, 12
Continuous Deployment:
small changes, pushed frequently
Thursday, May 17, 12
Continuous Deployment:
small changes, pushed frequently.
To production.
Thursday, May 17, 12
Continuous Deployment:
10,068 releases to production in 2011
@ Etsy
Thursday, May 17, 12
Continuous Deployment:
How?
Thursday, May 17, 12
Continuous Deployment:
No branching.
“All existing revision control systems werebuilt by people who build installedsoftware”- Paul Hammond,Always Ship Trunk, Velocity 2010Thursday, March 17, 2011
Thursday, May 17, 12
if ($cfg[‘awesome_new_search’]) {# new hotness$rsp = do_solr();
} else {# boring old stuff$rsp = do_grep();
}
Continuous Deployment:
feature flags
Thursday, May 17, 12
Continuous Deployment:
Ramp - ups (on top of feature flags)
1. Launch to staff only2. Launch to 1% of all users3. Launch to members of a beta group
Thursday, May 17, 12
Continuous Deployment:
any engineer can launch a feature to
1% of users
Thursday, May 17, 12
Continuous Deployment:
~200 experiments live right now
Thursday, May 17, 12
Metrics driven development:
optimize for learning
Thursday, May 17, 12
Metrics driven development:
measure everything
Thursday, May 17, 12
Metrics driven development:
getting started:make it easy
Thursday, May 17, 12
Metrics driven development:
measure everything:logs, monitoring, A/B, graphs, StatsD
Thursday, May 17, 12
Metrics driven development:
StatsD @Instagram, Pinterest, Github, Mozilla, LAN.com, Zynga, Kickstarter, LivingSocial and 70+ other companies
Thursday, May 17, 12
Metrics driven development:
StatsD“We love statsd at Instagram. Written by Etsy, it’s a network daemon that aggregates and rolls-up data into Graphite. At its core, it has two types of statistics: counter and timers. We use the counters to track everything from number of signups per second to number of likes, and we use timers to time generation of feeds, how long it takes to follow users, and any other major action.” - Mike Krieger, Founder and CTO, Instagram.
Thursday, May 17, 12
Metrics driven development:
StatsD Open source, a daemon for timing and counting things, graphs rates, averages and 95th percentile, 20-30 minute install, easy to use
Thursday, May 17, 12
Metrics driven development
StatsD::timing("page.render", $msec);
Thursday, May 17, 12
Metrics driven development
Thursday, May 17, 12
Metrics driven development
getting started:your 5 core metrics
Thursday, May 17, 12
Metrics driven development
5 core metrics @ Etsy:sign ups, logins, checkout, new listings, posts in the bugs forums
Thursday, May 17, 12
Metrics driven development
378,000 metrics, collected roughly once a second
Thursday, May 17, 12
Metrics driven development
the confidence to change
Thursday, May 17, 12
Adapt, find market fit.
Engineering change:Rapid experimentation
Thursday, May 17, 12
Adapt, find market fit,addictive to engineers.
Engineering change:Rapid experimentation
Thursday, May 17, 12
Thank you!
Lean more: http://codeascraft.etsy.com
Thursday, May 17, 12