After three years as a Scrum Master and Agile coach, I hit a wall coaching a team that did not want to try popular Agile engineering techniques such as TDD and pair programming. I had become a Scrum Master after four years working on the business analysis and account ownership side of things and could not speak from personal experience about engineering practices. In order to get some first-hand experience and to gain a new perspective, I chose to spend a year or two as a software developer on a Scrum team.
The experience has been eye-opening. I experienced a tremendous cognitive load working with a wide array of technologies; this pulled my attention away from many of the collaborative and process-oriented activities I cared about as a Scrum Master. I was surprised to feel strong pressure to complete work quickly, cutting corners, even when the Product Owner and Scrum Master were not asking me to. When this pressure was explicit, it usually came from my fellow developers. On the other hand, there is real joy in writing code and seeing a system do something worthwhile that it wasn't doing before. My outlook has changed tremendously and is something I want to share with anyone who works with development teams, especially Scrum Masters and other coaches. I am still enjoying my time as a developer, but I'm looking forward to returning to coaching and incorporating this experience into my approach.
Slides for my presentation at Agile2019 (https://agile2019.sched.com/event/OD8A/undercover-scrum-master-dane-weber)
15. excella.com | @excellaco
• The Planning Game
• Small Releases
• Metaphor
• Simple Design
• Testing
• Refactoring
• Pair Programming
• Collective Ownership
• Continuous Integration
• 40-hour week
• On-site Customer
• Coding Standard
Extreme Programming
16. excella.com | @excellaco
• The Planning Game
• Small Releases
• Metaphor
• Simple Design
• Testing
• Refactoring
• Pair Programming
• Collective Ownership
• Continuous Integration
• 40-hour week
• On-site Customer
• Coding Standard
Extreme Programming
17. excella.com | @excellaco
Mission Debrief
Accomplished:
Spent two years as a full-stack developer,
learning a lot from my teammates & team.
18. excella.com | @excellaco
• Joined a successful project just as we
reorganized from two teams into three.
• Team named itself: “Bits, Please!”
• Whole project was characterized by egalitarian,
joyful, empowered, and helpful people.
Mission Debrief
19. excella.com | @excellaco
• API services inspired by the microservice pattern
• Single-page application front-end
• Cloud-hosted
• Highly automated build/test/deploy pipeline
• Merge code to master, pass tests, and it will be
live in production in under 30 minutes.
Mission Debrief
20. ❑ Magical Developers
❑ Cognitive Load
❑ Pair Programming
❑ Test-Driven Development
❑ Feedback Loops
& Planning
❑ Implicitly in a Hurry
27. excella.com | @excellaco
Everybody is
special, not just
developers
Respect everyone,
their time, and their
contributions
Welcome others &
ask for feedback as
the privileged group
Avoid shorthand
terms that divide
groups
Counter-
measures
28. ❑ Magical Developers
❑ Cognitive Load
❑ Pair Programming
❑ Test-Driven Development
❑ Feedback Loops
& Planning
❑ Implicitly in a Hurry
56. excella.com | @excellaco
Pair programming
is a habit and skill
Set up the right
environment
Practice in order to
gain the skill
Be patient
Counter-
measures
57. ❑ Magical Developers
❑ Cognitive Load
❑ Pair Programming
❑ Test-Driven Development
❑ Feedback Loops
& Planning
❑ Implicitly in a Hurry
81. excella.com | @excellaco
TDD is also a
habit and skill
Invest in working,
pleasant frameworks
Stop and fix ugly or
missing tests
Whatever the order,
always hit red,
green, & refactor
Counter-
measures
82. ❑ Magical Developers
❑ Cognitive Load
❑ Pair Programming
❑ Test-Driven Development
❑ Feedback Loops
& Planning
❑ Implicitly in a Hurry
101. excella.com | @excellaco
Diffusion of responsibility:
More people sharing responsibility
decreases individual responsibility.
Feedback Loops & Planning
102. excella.com | @excellaco
“No battle was ever won according to plan,
but no battle was ever won without one.”
- Dwight D. Eisenhower
Feedback Loops & Planning
103. excella.com | @excellaco
Not everything is
fun all the time
Somebody has to do
the chores
Improve feedback
loops
Communicate the
value of less-fun
activities
Counter-
measures
104. ❑ Magical Developers
❑ Cognitive Load
❑ Pair Programming
❑ Test-Driven Development
❑ Feedback Loops
& Planning
❑ Implicitly in a Hurry
126. excella.com | @excellaco
Haste makes
waste
Be a professional:
craft with integrity
Talk about product
quality and
maintenance
Incentivize quality,
maintenance, and
refactoring
Counter-
measures
127. ❑ Magical Developers
❑ Cognitive Load
❑ Pair Programming
❑ Test-Driven Development
❑ Feedback Loops
& Planning
❑ Implicitly in a Hurry