Bebop to the Top

Bebop to the Top

How the jazz ensemble can serve as an archetype for development teams.

F52442fb9fd06dc243a9b853bb127784?s=128

Michael Cain

April 29, 2017
Tweet

Transcript

  1. 1.

    BEBOP TO THE TOP THE JAZZ BAND AS A GUIDE

    TO LEADERSHIP CAIN @CODETRANE CODETRANE.IO
  2. 2.
  3. 3.
  4. 4.
  5. 5.
  6. 6.
  7. 7.
  8. 8.

    FEATURES OF AN IDYLLIC WORK PLACE • CLEAR EXPECTATIONS •

    You have a job description, which you understand and is aligned to your skill set • You understand the project/application/super-secret alien comm’s system to which your contributing • SUPPORTIVE LEADERSHIP • Your boss is a servant-leader (TBD) • The culture of your workplace aligns with your values • FUN! • You enjoy your work and the people you work • You are treated like a human being (work/life balance)
  9. 9.

    WORKING FOR SOMEONE THAT MAKES YOU WANT TO FIND OUT

    WHAT RM –RF * IS ALL ABOUT • MICROMANAGEMENT/MACRO-NON-MANAGEMENT • IF you got a job description, it seems to be for a job that you don’t have • You’re frequently assigned to different, unrelated projects or multiple unrelated projects concurrently • No consistency in work day/leadership • UNSUPPORTIVE LEADERSHIP • Your boss is a tyrant/ghost • The culture of your workplace has little to do with your own values • !FUN • Your workday swings wildly between boredom and chaos • You are treated like a cog in a machine
  10. 11.

    HOW THE BIG BAND WORKS IN 60 SECONDS • Instrumentation

    is divided into two sections • Horn section (trumpets, trombones, saxophones) • Rhythm section (piano, guitar, bass, drums) • Responsibilities are divided into three categories • Melody (Core Language) • Harmony (Framework) • Rhythm/Time (DevOps) • Compositions are based on patterns • Rhythm changes/Blues/AABA • ”HEAD – Solos – HEAD” • ”Convention over Configuration” • Solos are taken over the form of the composition
  11. 12.

    GUIDELINES VS. RULES • COMPANY STYLE GUIDES • Provides ”harmony”

    for your developers • Gives your developers freedom to develop (playing in the sandbox) • GUIDELINES CAN BE BENT, NOT BROKEN • Guidelines provide flexibility for the unknown • They also make room for the future
  12. 14.

    GUIDELINES VS. RULES IN DEVELOPMENT • RULES-BASED USER STORY •

    “As a user, given I’m logged in, I want to see our company logo as an 90x45 .png file in the west pane of the nav bar (nav bar color #6833FF) with Helvetica font as the default text, displaying the links as highlighted text (#52FF33) with a maximum load time of 566ms.“ • GUIDELINE-BASED USER STORY • “As a user, given I‘m logged in, I want our company logo to display in the nav bar, with highlighted links“
  13. 15.

    PLAY WHAT YOU LIKE; BE AWARE OF YOUR BAND •

    WE DON’T DEVELOP IN A VACUUM • What we do on our branch should ‘play nice’ with the code base • TDD/CI • REMEMBER YOUR FUTURE SELF • Freedom == Power == Responsibility • Expressive code with minimal comments • LISTEN ACROSS THE ENSEMBLE • Awareness of your teammates’ work (actually pay attention during stand-up) Where there is great power there is great responsibility, where there is less power there is less responsibility, and where there is no power there can, I think, be no responsibility. - Winston Churchill (House of Commons, 1906)
  14. 16.

    SOLOING ON YOUR BRANCH • THE SOLOIST SETS THE TONE

    • You have freedom to implement the US as you see fit • You’re free to develop “inside”; use caution when developing “outside” • THE ENSEMBLE COMMENTS ON THE SOLO • Questions are best on PRs (antecedent – consequent) • Be constructive, never destructive • EVERYONE IS RESPONSIBLE FOR TIME • Freedom is fragile • MINSWAN
  15. 17.

    KNOW YOUR ROLE IN THE BAND • WHAT SECTION OF

    THE BAND ARE YOU IN? • Is there a part of the stack in which you thrive? Is there a part you could “level-up”? • How can you best play your part? • THE BEST BANDLEADERS LEAD FROM THE BACK • Allow your band members to shine • Encourage coaching among senior/junior devs (Make time for Kaizen) • Many players; one band
  16. 18.

    CULTIVATING CREATIVE CODE: WHEN THINGS BREAK • MISTAKES != WRONG

    • Code (does not) work(s) as expected • Creativity requires permission to experiment • We critique what it DOES, not what it IS • WHEN CODE “WORKS” • Ensemble awareness; is your code “out of tune”? • Brittle vs. Flexible? • TEACHABLE MOMENTS (SENIOR DEVS AND TEAM LEADS) • Questions are key- what were you trying to accomplish? • What did you expect the code to do? What actually happened? • What can you do differently? Do not fear mistakes; there are none. - Miles Davis
  17. 19.

    BANDLEADING DO’S AND DON’TS • DO • Encourage responsible risk-taking

    (creativity can be scary) • Frame mistakes and opportunities to grow (there are no wrong notes) • Praise publically; critique privately • Praise strong code AND strong improvement • Foster a culture of mentorship/stewardship • DON’T • Be careless/cavalier with criticism • Create/allow “pecking orders” (Skill && Humility) • Kill the golden goose (P and PC)
  18. 20.

    SUMMARY: LEAD SHEET FOR LEADERSHIP • TRUST • Trust in

    your team • Trust in the process • Trust the creative impulse • STEWARDSHIP • Success is an ensemble effort • Everyone is responsible for ‘time’. • Each one teach one • CLEAR GUIDELINES • Everyone should know the tune • Onboarding new employees should be straightfoward • The “why” is as clear as the “how”
  19. 21.
  20. 22.

    BEBOP TO THE TOP THE JAZZ BAND AS A GUIDE

    TO LEADERSHIP CAIN @CODETRANE CODETRANE.IO