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 full-size slide

  2. Why business?

    View full-size slide

  3. Why are you here?

    View full-size slide

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

    View full-size slide

  5. Developer Focus

    View full-size slide

  6. Test Driven Development

    View full-size slide

  7. Behavior Driven Development

    View full-size slide

  8. Developer Driven
    Development

    View full-size slide

  9. how does an open source team
    work?

    View full-size slide

  10. maintainer or small team of
    committers

    View full-size slide

  11. offline communication channels
    email list
    IRC

    View full-size slide

  12. occasional in-person meetings
    for big goals

    View full-size slide

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

    View full-size slide

  14. could your company work this
    way?

    View full-size slide

  15. it is possible

    View full-size slide

  16. everyone chooses what they
    work on

    View full-size slide

  17. offline communication
    chat, email

    View full-size slide

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

    View full-size slide

  19. no daily in-person meetings

    View full-size slide

  20. make small decisions offline or
    in code

    View full-size slide

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

    View full-size slide

  22. teams self-form and shuffle as
    needed

    View full-size slide

  23. Developer Driven
    Development

    View full-size slide

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

    View full-size slide

  25. pre-requisites

    View full-size slide

  26. own your product

    View full-size slide

  27. no deadlines

    View full-size slide

  28. passionate developers

    View full-size slide

  29. great communication
    chat
    email
    in-person
    drinking

    View full-size slide

  30. or, gatekeepers

    View full-size slide

  31. best if the team can use the
    product

    View full-size slide

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

    View full-size slide

  33. dumb ideas are not worked on

    View full-size slide

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

    View full-size slide

  35. Supporting Evidence

    View full-size slide

  36. Business Minimalism

    View full-size slide

  37. autonomy
    mastery
    purpose

    View full-size slide

  38. perils of extrinsic motivators

    View full-size slide

  39. why outsourcing is difficult

    View full-size slide

  40. take money off the table

    View full-size slide

  41. if you want engagement, self
    direction is better

    View full-size slide

  42. purpose motive is more
    powerful than the profit motive

    View full-size slide

  43. The Best Motivators

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  47. autonomy
    mastery
    purpose

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  50. autonomy
    mastery
    purpose

    View full-size slide

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

    View full-size slide