Download - Optimizing for developer happiness
![Page 1: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/1.jpg)
Optimizing for developer happiness
Chad DickersonCTO, [email protected] @chaddickerson
Video of talk: http://www.youtube.com/watch?v=22EECFEk9Xs
![Page 2: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/2.jpg)
![Page 3: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/3.jpg)
We deploy code to production about 25x per day
![Page 4: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/4.jpg)
Across a team of 70 engineers
![Page 5: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/5.jpg)
We have a lot of people depending on us.
![Page 6: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/6.jpg)
400,000+ active sellers
![Page 7: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/7.jpg)
9+ million registered members
![Page 8: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/8.jpg)
$300+ million in sales in 2010
![Page 9: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/9.jpg)
> 1 billion page views / month
![Page 10: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/10.jpg)
Business in over 150 countries
![Page 11: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/11.jpg)
How?
![Page 12: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/12.jpg)
Culture.
![Page 13: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/13.jpg)
One that optimizes for developer happiness.
![Page 14: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/14.jpg)
Erik Kastner
![Page 15: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/15.jpg)
Ruby is designed to make programmers happy.— Yukihiro Matsumoto, aka “Matz”
![Page 16: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/16.jpg)
Connect engineers to their work
![Page 17: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/17.jpg)
by making it easy to ship
![Page 18: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/18.jpg)
with the support of a community.
![Page 19: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/19.jpg)
Etsy operates internally like an online community: chaotic, irreverent, self-regulating and self-sustaining.
-- Noah Sussman, Software Engineer
![Page 20: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/20.jpg)
The way we do things shouldn’t work.
![Page 21: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/21.jpg)
It does.
![Page 22: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/22.jpg)
Constant progress
![Page 23: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/23.jpg)
powered by
![Page 24: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/24.jpg)
radical decentralization of authority
![Page 25: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/25.jpg)
we trust people.
![Page 26: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/26.jpg)
(and dogs)
“Dogs are part of the team, and are expected to commit code.”
MiloDottie
![Page 27: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/27.jpg)
![Page 28: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/28.jpg)
Ari JM Diego Eric Seth
![Page 29: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/29.jpg)
![Page 30: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/30.jpg)
Fred
![Page 31: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/31.jpg)
Milo
![Page 32: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/32.jpg)
Milo
Code going out to our servers
Progress bar
![Page 33: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/33.jpg)
Milo
![Page 34: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/34.jpg)
![Page 35: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/35.jpg)
![Page 36: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/36.jpg)
![Page 37: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/37.jpg)
Etsy respects the trade of engineering. Code as Craft. The first time I came to Etsy there was a quilt over the room where the engineers sat, it said "We [heart] engineers."
- Bill Massie, Software Engineer
![Page 38: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/38.jpg)
![Page 39: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/39.jpg)
![Page 40: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/40.jpg)
![Page 41: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/41.jpg)
![Page 42: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/42.jpg)
![Page 43: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/43.jpg)
![Page 44: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/44.jpg)
![Page 45: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/45.jpg)
![Page 46: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/46.jpg)
![Page 47: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/47.jpg)
Peter Drucker
![Page 48: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/48.jpg)
the traditional assembly line "deprives the worker of satisfaction. . . by the confinement of the worker to one
manipulation repeated endlessly which denies the satisfaction of finishing a job."
![Page 49: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/49.jpg)
![Page 50: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/50.jpg)
![Page 51: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/51.jpg)
![Page 52: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/52.jpg)
If companies really want their workers to produce, they should try to impart a sense of meaning—not just through vision statements but by allowing employees to feel a sense of completion and ensuring that a job well done is acknowledged.
-- Dan Ariely, The Upside of Irrationality (2010)
![Page 53: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/53.jpg)
Easy deploys =
developer happiness
![Page 54: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/54.jpg)
![Page 55: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/55.jpg)
![Page 56: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/56.jpg)
![Page 57: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/57.jpg)
![Page 58: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/58.jpg)
Complete.At Etsy, this cycle takes an
average of 21 minutes.
![Page 59: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/59.jpg)
Peter Drucker
![Page 60: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/60.jpg)
“[the corporation’s] social function as a community is as important as its economic function as an efficient producer.”
![Page 61: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/61.jpg)
![Page 62: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/62.jpg)
We use it about 25x a day
![Page 63: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/63.jpg)
![Page 64: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/64.jpg)
The “Push Train”
![Page 65: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/65.jpg)
Ross Snyder
![Page 66: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/66.jpg)
IRC Topic
![Page 67: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/67.jpg)
20:11 -!- ross changed the topic of #push to: steve | mike | rachel | bill | ross
![Page 68: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/68.jpg)
3. rachel 4. ross 2. mike 5. bill
1. steve
![Page 69: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/69.jpg)
“intricate ballet in which the individual dancers and ensembles all have distinctive parts which miraculously reinforce each other and compose an orderly whole.”
Jane Jacobs
![Page 70: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/70.jpg)
![Page 71: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/71.jpg)
Community
![Page 72: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/72.jpg)
The fact that the IRC and communication channels are as entertaining as they are useful is great. It makes newcomers feel comfortable and supported.
--Justin Donato, Software Engineer
![Page 73: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/73.jpg)
We use tools
![Page 74: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/74.jpg)
to build happy communities
![Page 75: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/75.jpg)
“. . . . unconscious assumption of general street support when the chips are down.”
![Page 76: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/76.jpg)
Dev and ops cooperation. This can never be overstated.. . . . So many engineers watching each others backs.
--Mike Brittain, Software Engineer
![Page 77: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/77.jpg)
Your team is your community.
![Page 78: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/78.jpg)
Help them finish things.
![Page 79: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/79.jpg)
Give them a voice.
![Page 80: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/80.jpg)
There is a quality even meaner than outright ugliness or disorder, and this meaner quality is the dishonest mask of pretended order, achieved by ignoring or suppressing the real order that is struggling to exist and to be served.
Jane JacobsThe Death and Life of Great American Cities
1961
![Page 81: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/81.jpg)
Build a community
![Page 82: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/82.jpg)
where you allow real human order to emerge to
get things done
![Page 83: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/83.jpg)
and great things will happen.
![Page 84: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/84.jpg)
Optimize for the happiness of people.
![Page 85: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/85.jpg)
Thank you.
![Page 86: Optimizing for developer happiness](https://reader034.vdocuments.us/reader034/viewer/2022051818/54b710ad4a7959a8588b46a5/html5/thumbnails/86.jpg)
Photo credits• Fred Wilson deploying: http://www.flickr.com/photos/allspaw/5436215259/
• Eatsy: http://www.flickr.com/photos/zsqr0000/5594193193/
• Coding and guitar: http://www.flickr.com/photos/zsqr0000/5181883749/
• Milo pushing deploy: http://www.flickr.com/photos/zsqr0000/5269002895/
• Eating at desk: http://www.flickr.com/photos/jshiell/2498464557/
• Just ship tshirt: http://www.etsy.com/listing/70249006/just-ship-knuckle-tattoo-tshirt
• Women on assembly line: http://www.loc.gov/pictures/item/fsa1992000956/PP/
• B-25 bomber: http://www.loc.gov/pictures/item/fsa1992001167/PP/
• Planes lined up: http://www.flickr.com/photos/llarsonphotography/2434063007/
• Jane Jacobs: http://hdl.loc.gov/loc.pnp/cph.3c37838