optimizing for developer happiness
play

Optimizing for developer happiness Chad Dickerson CTO, Etsy - PowerPoint PPT Presentation

Optimizing for developer happiness Chad Dickerson CTO, Etsy chad@etsy.com @chaddickerson We deploy code to production about 25x per day Across a team of 70 engineers We have a lot of people depending on us. 400,000+ active sellers 9+


  1. Optimizing for developer happiness Chad Dickerson CTO, Etsy chad@etsy.com @chaddickerson

  2. We deploy code to production about 25x per day

  3. Across a team of 70 engineers

  4. We have a lot of people depending on us.

  5. 400,000+ active sellers

  6. 9+ million registered members

  7. $300+ million in sales in 2010

  8. > 1 billion page views / month

  9. Business in over 150 countries

  10. How?

  11. Culture.

  12. One that optimizes for developer happiness.

  13. Erik Kastner

  14. Ruby is designed to make programmers happy. — Yukihiro Matsumoto, aka “Matz”

  15. Connect engineers to their work

  16. by making it easy to ship

  17. with the support of a community.

  18. Etsy operates internally like an online community: chaotic, irreverent, self- regulating and self-sustaining. -- Noah Sussman, Software Engineer

  19. The way we do things shouldn’t work.

  20. It does.

  21. Constant progress

  22. powered by

  23. radical decentralization of authority

  24. we trust people.

  25. (and dogs) Dottie Milo “Dogs are part of the team, and are expected to commit code.”

  26. Ari JM Diego Eric Seth

  27. Danny Adam Me Kellan Fred

  28. Milo

  29. Code going out to our servers Milo Progress bar

  30. Milo

  31. 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

  32. Peter Drucker

  33. 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."

  34. 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)

  35. Easy deploys = developer happiness

  36. Complete. At Etsy, this cycle takes an average of 21 minutes.

  37. Peter Drucker

  38. “[the corporation’s] social function as a community is as important as its economic function as an efficient producer.”

  39. We use this about 25x a day

  40. The “Push Train”

  41. Ross Snyder

  42. Topic!!!

  43. 20:11 -!- rachel changed the topic of #push to: steve | mike | rachel | bill | ross

  44. 1. steve 3. rachel 2. mike 4. ross 5. bill

  45. “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

  46. Community

  47. 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

  48. Using tools

  49. to build happy communities

  50. “. . . . unconscious assumption of general street support when the chips are down.”

  51. Dev and ops cooperation. This can never be overstated.. . . . So many engineers watching each others backs. --Mike Brittain, Software Engineer

  52. Your team is your community.

  53. Help them finish things.

  54. Give them a voice.

  55. 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 Jacobs The Death and Life of Great American Cities 1961

  56. Build a community

  57. where you allow real human order to emerge

  58. and magic will happen.

  59. Optimize for the happiness of people.

  60. Thank you.

Recommend


More recommend