Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Developer Driven Development

Developer Driven Development

This talk is about software development process at the team level. It is about how GitHub manages our software development team. Instead of a typical management or agile structure, we embrace several features of the Open Source development workflow, using a mix of autonomy, responsibility, no meetings, no backlog, no roadmap, no vacation day limits and free beer to keep our developers motivated and shipping.

Scott Chacon

April 06, 2011
Tweet

More Decks by Scott Chacon

Other Decks in Technology

Transcript

  1. The Open Source Business
    Scott Chacon

    View Slide

  2. About Us

    View Slide

  3. View Slide

  4. View Slide

  5. View Slide

  6. View Slide

  7. Why business?

    View Slide

  8. Why are you here?

    View Slide

  9. learn new tools
    be more efficient
    get more done with less/easier

    View Slide

  10. Software

    View Slide

  11. Developer Focus

    View Slide

  12. SCRUM

    View Slide

  13. SCRUM?

    View Slide

  14. Test Driven Development

    View Slide

  15. Behavior Driven Development

    View Slide

  16. Developer Driven
    Development

    View Slide

  17. how does an open source team
    work?

    View Slide

  18. maintainer or small team of
    committers

    View Slide

  19. offline communication channels
    email list
    IRC

    View Slide

  20. occasional in-person meetings
    for big goals

    View Slide

  21. individuals choose what they
    want to work on
    still get bugs, unsexy things
    teams self assemble to solve larger problems

    View Slide

  22. could your company work this
    way?

    View Slide

  23. it is possible

    View Slide

  24. everyone chooses what they
    work on

    View Slide

  25. offline communication
    chat, email

    View Slide

  26. no roadmaps

    View Slide

  27. no feature backlog
    http://gettingreal.37signals.com/ch05_Forget_Feature_Requests.php

    View Slide

  28. no daily in-person meetings

    View Slide

  29. make small decisions offline or
    in code

    View Slide

  30. people can work from
    anywhere, anytime, in any style

    View Slide

  31. teams self-form and shuffle as
    needed

    View Slide

  32. Developer Driven
    Development

    View Slide

  33. autonomy
    power / responsibility
    no meetings
    no feature requests / backlog
    no roadmap
    no vacations
    free beer

    View Slide

  34. pre-requisites

    View Slide

  35. own your product

    View Slide

  36. no deadlines

    View Slide

  37. passionate developers

    View Slide

  38. great communication
    chat
    email
    in-person
    drinking

    View Slide

  39. small teams

    View Slide

  40. or, gatekeepers

    View Slide

  41. best if the team can use the
    product

    View Slide

  42. advantages

    View Slide

  43. great productivity
    way less overhead
    everyone is always interested in what they are
    doing

    View Slide

  44. very agile

    View Slide

  45. more ideas

    View Slide

  46. dumb ideas are not worked on

    View Slide

  47. keep your devs
    more flexible
    always working on something they want
    more skin in the game
    better retention (recruiting is very expensive)

    View Slide

  48. Supporting Evidence

    View Slide

  49. View Slide

  50. Business Minimalism

    View Slide

  51. Open Source

    View Slide

  52. View Slide

  53. autonomy
    mastery
    purpose

    View Slide

  54. perils of extrinsic motivators

    View Slide

  55. why outsourcing is difficult

    View Slide

  56. take money off the table

    View Slide

  57. if you want engagement, self
    direction is better

    View Slide

  58. purpose motive is more
    powerful than the profit motive

    View Slide

  59. The Best Motivators

    View Slide

  60. Autonomy
    People want to have control over what they do

    View Slide

  61. Mastery
    People want to get better at what they do

    View Slide

  62. Purpose
    People want to be part of something that is bigger
    than they are

    View Slide

  63. autonomy
    mastery
    purpose

    View Slide

  64. Skunkworks

    View Slide

  65. ROWE

    View Slide

  66. Lockheed Martin (Advanced Development
    Programs)
    Best Buy (ROWE)
    Atlassian (FedEx Day)
    Google (20%)
    GitHub (100%)

    View Slide

  67. overview

    View Slide

  68. Developer Driven
    Development
    autonomy
    power/responsibility
    no meetings
    no feature backlog or roadmap
    free beer

    View Slide

  69. autonomy
    mastery
    purpose

    View Slide

  70. thanks!

    View Slide

  71. questions?

    View Slide

  72. resources
    github.com/schacon/ddd
    schacon.github.com/ddd
    [email protected]
    Drive, Daniel Pink - TED Talk

    View Slide