Collaboration: At the Extremities of Extreme
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Mark Levison on Sep 03, 2009
Rachel Davies and Liz Sedley, co-authors of the book Agile Coaching, gave a fun session “Top Ten Tips for Agile Coaches”. The session could well have been called “Top Ten Things that Many Agile Coaches get Wrong”.
Get Introduced – when a coach first arrives on a team (existing or new) it can be a traumatic event. The team is unsure who the coach is, why they’re there and if they’re even qualified to do the job. An introduction from a senior person (manager, team lead or just well respected person) will go a long way to soothing those fears. In addition the coach should explain their own background and their goal(s).
Agile is Not a Religion – members of the team don’t care about Agile, they’re focused on getting their job done, getting a pay raise and maybe a promotion. As such they don’t care about Agile, they only care about things that will help them solve their current problems. As coaches, we need to take time, understand the situation, listen and perhaps most important make the team feel that their concerns have been heard.
Show Respect – don’t just jump in with a plan to solve all of the team’s problems. Understand how they got to where they are today. Focus on language, for example, team members are people and not resources, developers, testers and management.
Step Back – too often, as coaches, we focus on the problems that the team exhibits without seeing the big picture. Don’t try to fix the people – in most cases they’re just responding to the organizational pressures. Instead step back, use Systems Thinking to help find these pressures and then focus on fixing them.
Take Time to Reflect – We frequently react to problems in the heat of the moment. Instead of reacting immediately with our frustration, pause, take some time to reflect, talk it over with another coach, perhaps even sleep on it.
Ask Questions, Speak Ideas – As we seek to understand how teams behave/work – ask questions mostly ‘how’ and ‘what’. Liz recommends avoiding the use of ‘why’ since it will put many people on the defensive. She reserves the use of ‘why’ for Root Cause Analysis – which she uses sparingly. When you have interesting ideas to share state them and don’t use a question, people will see through what you’re doing and resent it.
Introduce The Elephant – Big problems are often ignored because people perceive them to be insurmountable. Don’t let these slip by, instead use a retrospective and ask: “I notice that people are avoiding…”. Help the team find some aspect of the problem to chip away at. Whatever the outcome, don’t push the team to take action if they’re not ready.
Make Change an Experiment – People are often scared of change, but by making it an experiment we can help lessen the fear. By involving team members in the change, they will take ownership of the effort and get used to making small changes. The retrospective is a good time to introduce these experiments.
Go with the Energy of the Team – Rather than solve the biggest problem that the team faces at any time, find out what they have the energy to solve. By solving small problems first they gain the confidence and the joy. As they gain experience their ambition and energy will grow.
Have the Courage of your Convictions – On a regular basis your beliefs will attacked and called into question. Have courage and believe in yourself, but above all be patient. We’re in the business of getting teams to make very large changes, we’ve digested these changes but the teams we coach haven’t.
Audience members added a variety of other tips:
Previously on InfoQ: Beginner's Mind - An Approach to Listening and on this reporter’s blog, Liz and Rachel’s Coaching Workshop.
Transforming Software Delivery: An IBM Rational Case Study
18 agile and lean practices for effective software development governance
SCM best practices for multiple processes, releases & distributed teams
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
Great advice, both from the session presenters and from the audience.
+1
Nice article, awesome advice, lots of these points (if not all) can and should be applied in all interactions where you're attempting knowledge transfer of some sort. I find it quite interesting how the agile movement is teaching us to once again be dignified humans...
Rick - I see this from a different angle. The agile movement has attracted many good humans, who remind us about the importance of respect and dignity.
very nice advices.
The Methods & Tools newsletter has just released in its html archive section the article "Agile Coaching Tips" by Rachel Davies.
www.methodsandtools.com/archive/archive.php?id=96
Hi Mark,
I've translated into French your (very interesting) article : Dix Conseils pour un Coach Agile
Regards, Fabrice
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.
7 comments
Watch Thread Reply