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)
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
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
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
“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“
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)
• 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
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
• 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
(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)
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”