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

A Developers Primer to Managing Developers

A Developers Primer to Managing Developers

Session from DrupalCon Austin 2014 - Recording here: https://austin2014.drupal.org/session/developers-primer-managing-developers

eojthebrave

June 04, 2014
Tweet

More Decks by eojthebrave

Other Decks in Technology

Transcript

  1. A Developers Primer
    to Managing Developers
    @joe ~$> echo “joe shindelar - @eojthebrave”
    php[tek] Chicago - 2015
    https://joind.in/13753

    View full-size slide

  2. _ _ _
    __| |_ __ _ _ _ __ __ _| (_)_______ _ __ ___ ___
    / _| | '__| | | | '_ \ / _ | | |_ / _ \ | '_ ' _ \ / _ \
    | (_| | | | |_| | |_) | (_| | | |/ / __/_| | | | | | __/
    \__._|_| \__._| .__/ \__,_|_|_/___\___(_)_| |_| |_|\___|
    |_|
    ,,, ,,, ,,, ,,, ,,,
    ,,, ,,, ,,, ,,, ,,,
    ,,, ,, ,,, ,,, ,,, ,,,,,, ,,, ,,,, ,,,,, ,,,,,,
    ,,, ,,, ,,, ,,, ,,, ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,, ,,,,,,
    ,,, ,,, ,,, ,,, ,,, ,, ,,, ,,, ,,, ,,, ,,, ,,,
    ,,, ,,, ,,, ,,, ,,, ,,,,,,,, ,,, ,,, ,,, ,,, ,,,
    ,,, ,,, ,,, ,,, ,,, ,,,, ,,, ,,, ,,,, ,,, ,,, ,,,
    ,,,,,,,,, ,,, ,,,, ,,, ,,, ,,, ,,,, ,,, ,,, ,,, ,,, ,,,
    ,,,,,,,,, ,,,,,,,,,, ,,, ,,, ,,,,,,,,,, ,, ,,,,,, ,,,,,,,, ,,,,,
    @joe ~$> echo “joe shindelar - @eojthebrave”

    View full-size slide

  3. I’m a developer

    View full-size slide

  4. Who are you?

    View full-size slide

  5. Here’s what we’re
    going to talk about
    1. Things that motivate developers.
    2. Drupalize.Me process, changes, and

    their impact on the team.
    3. Some other sudo random tid-bits.
    4. goto: 1

    View full-size slide

  6. A ticket is the same as a
    todo is the same as a task
    is the same as an actionable
    item I can work on.

    View full-size slide

  7. I kick ass when
    I’m having fun.

    View full-size slide

  8. I kick ass when
    I’m having fun.
    challenged
    engaged
    learning

    View full-size slide

  9. Made with love.
    Just like mom’s
    $_COOKIE[‘peanut_butter’]

    View full-size slide

  10. Not all developers are created
    equal so know what each person
    on your team finds

    /[fun|challenging|awesome]/i

    View full-size slide

  11. What motivates /[you|me]/?
    Tell your PM, tell your boss.
    Tell your co-workers.

    View full-size slide

  12. “You can’t always get what
    you want … but if you try
    sometimes … you just might
    find … you get what you need”
    - Sir Michael Philip Jagger

    View full-size slide

  13. _ _ _
    __| |_ __ _ _ _ __ __ _| (_)_______ _ __ ___ ___
    / _| | '__| | | | '_ \ / _ | | |_ / _ \ | '_ ' _ \ / _ \
    | (_| | | | |_| | |_) | (_| | | |/ / __/_| | | | | | __/
    \__._|_| \__._| .__/ \__,_|_|_/___\___(_)_| |_| |_|\___|
    |_|
    • 2-6 person team with varying hours.
    • Buckets of tickets organized by

    milestones – really just a date.
    • 2 week sprints.
    • PM focused on assigning tickets

    based on estimated hours to complete.
    v 1.0

    View full-size slide

  14. _ _ _
    __| |_ __ _ _ _ __ __ _| (_)_______ _ __ ___ ___
    / _| | '__| | | | '_ \ / _ | | |_ / _ \ | '_ ' _ \ / _ \
    | (_| | | | |_| | |_) | (_| | | |/ / __/_| | | | | | __/
    \__._|_| \__._| .__/ \__,_|_|_/___\___(_)_| |_| |_|\___|
    |_|
    • 2-6 person team with varying hours.
    • Buckets of tickets organized by goals.
    • Developers choose any ticket they want

    to work on.
    • 1 week sprints.
    • PM focuses on removing blockers and

    aiding team communication.
    v 1.2

    View full-size slide

  15. Your process shouldn’t be
    the same, but here are
    some of the big wins we
    encountered and more
    importantly the lessons
    they taught us.

    View full-size slide

  16. Project management
    methodologies sell
    books. They don’t
    solve problems.

    View full-size slide

  17. Process should
    be fluid

    View full-size slide

  18. A good process will
    motivate developers
    to do good work.

    View full-size slide

  19. Words Are Powerful

    View full-size slide

  20. self::assignTask()
    • Working on things that I can

    self-identify as being

    /[fun|challenging|engaging]/i*
    • Higher satisfaction in completed work.
    • Better overall communication about

    who is doing what.
    * most of the time

    View full-size slide

  21. Roadmaps / Structured Chaos
    • Define big picture goals.
    • Provide a rallying point for
    the team.
    • Created by the team and
    continuously maintained.
    • Allow anyone to sandbox an
    idea.

    View full-size slide

  22. Lessons / Gains
    • Better tickets.
    • Better understanding of what
    constitutes broken.
    • Increased understanding of
    overall project priorities.
    • I’m an adult.

    View full-size slide

  23. “Great teams, it turns out, begin
    with a shared vision – a unified,
    clearly articulated belief about
    the software they're creating.”
    - Paul Roberts paraphrasing Tim Mcarthy

    View full-size slide

  24. Oracle: Multiple
    Alternatives Program
    (MAP)

    View full-size slide

  25. Continuous Deployment
    I want others (and myself) to be able to
    benefit from the work I’m doing ASAP.

    View full-size slide

  26. It’s not

    always pretty.
    But we change it

    when we need to.

    View full-size slide

  27. goto: 7
    1. I want to do my best work.
    2. I’m more productive when I work on
    things I can self-identify as being a
    good fit for me.
    3. The more I know about the mission and
    vision the better I’ll do at helping to
    achieve it.
    4. Process should be fluid.
    5. I’m motivated by $_COOKIES

    View full-size slide

  28. Document your process
    POST: /api/v1/ask-question
    - name (string): Name of person asking the question.
    - query (string): The question you need answered.
    - priority (int): 0-9 how soon do you need an answer?

    View full-size slide

  29. Process should
    be fluid

    View full-size slide

  30. Keep your
    documentation
    up-to-date

    View full-size slide

  31. Improving
    communication

    between us

    View full-size slide

  32. Don’t make me
    context switch.

    View full-size slide

  33. But seriously.

    Please don’t.

    View full-size slide

  34. Emergency Classification
    System
    @W5Coaching: https://twitter.com/W5Coaching/status/466309417592696833/photo/1

    View full-size slide

  35. The PM

    Abstraction
    Layer

    View full-size slide

  36. “Management,is about human
    beings. Its task is to make
    people capable of joint
    performance, to make their
    strengths effective and their
    weaknesses irrelevant.”
    - Peter Drucker

    View full-size slide

  37. Recap
    • Know what motivates your team
    and yourself. Then leverage it.
    • Recognize when your process
    curbs motivation/morale.
    • Allow your process to change and
    document it when it does.

    View full-size slide

  38. Thanks
    @joe ~$> echo “joe shindelar - @eojthebrave”
    https://joind.in/13753

    View full-size slide