In short, you can pretty much design your own ideal engagement with an Agile Coach. I'm sure there is a coach out there that will be willing work with you toward your goals or activities, whatever they are. Although some coaches only do deals of a certain size or of a certain type of work, there is generally lots of flexibility to be found.
For example, depending on what you are after and on your budget, the number of days and the frequency of involvement can vary.
- Very limited: A day or a small number of days
- Regular or periodic: A day or three each iteration
- Full time but temporary: like 1 to 6 months
- Full time permanent: unbounded
The engagement can be just as simple as "hey, I think we're doing pretty good, but we'd like to have a fresh set of eyes to point out what we're overlooking." That could lead to any number of recommendations that the team is free to tackle on their own. Or that could lead to an additional engagement designed to address some specific issues. Or an engagement can be as broad as be here every day and work with us for three months.
As for the type of work that a coach may do for you, the work of the coach may be in the form of training and workshops, mentoring, coaching, consulting/advising, or getting his hands dirty.
Here are some examples of what you might engage a coach to help you with. This is not an exhaustive list.
- Limiting WIP and setting limits
- Using Kanban and Lean metrics
- Eliminating delay, prioritizing work via cost of delay, and improving flow
- A3 problem solving
- Demonstrate many retrospective techniques, lead retrospectives, mentor others as they use these techniques
- Spotting and removing impediments and managing risks
- Creating and sizing / estimating the release backlog, using velocity
- Identifying the MMF set
- Story mapping
- Project chartering, vision casting
- Planning and preplanning
- Using BVCs and information radiators, addressing why they are stale and not being used
- Space and facilities
- Pair programming, SOLID design, emergent architecture, TDD, CI, continuous deployment, etc.
- Defining Done
- Coding katas
- Design patterns, refactoring, etc., for example through lunch-n-learns
- Designing and tasking-out of stories; design review; shared task list and working as a team on each story
- A myriad of dysfunctions
- Issues with interpersonal relationships, working agreements, appreciation, active listening and working as a genuine team instead of as a simple working group, team accountability
- Team goals, rewards, recognition, MBOs and other HR/management policies
- The management role, including management influence and interference, people management
- Scrum of scrums, multi-layer scrum and kanban
- Working effectively with remote workers
- Project portfolio management
- Q&A - Address the team's concerns and questions such as:
- "How should we handle defects and minor changes in our specific context? Plan them and estimate them? Treat them as high priority and don't plan/estimate?"
- "What should we do if we don't finish a story in the iteration?"
- "On what day of the week should we have planning?"
- "We're considering changing the way we do xxxxxx, what do you think?"
- "We have work left over at the end of each iteration. What do we do?"
Give me a call and we'll set up a time to craft an engagement of your own, suitable for your needs and your context.