In order to create a highly engaged and healthy organisation, several areas may need coaching. The leadership for software development often falls into three main areas:
The Agile Coach Competency Framework defines three corresponding areas of coaching mastery. Our speciality is in coaching the Architecture and Technical Delivery area. We often work together with experienced coaches for the other areas to form a complete package.
The goal of architecture and technical delivery is to set up a socio-technical system that enables both high throughput of new features and innovations into production, at the same time as maintaining excellent stability and quality. For this to happen you need modern software engineering practices that center around managing complexity and optimizing for learning. Technical coaching can help you to introduce and spread better engineering practices and promote a culture of excellence amongst developers.
There needs to be a good relationship between the coaches, the organisation’s own leadership, and the development teams. The way the coaching is presented initially is important, to get buy-in and engagement from developers. We suggest the following:
An initial meeting between a lead technical coach and the organization’s technical leadership team will enable us to learn about the situation and discuss overall goals. We may follow up with further workshops on specific areas, for example:
The idea is to help the organization’s technical leadership team to understand what a technical coaching programme consists of, and how it can support them to achieve their goals. It is also a chance to examine the current architectural guidelines and policies and explore if in some cases they could be updated to better support the goals of the organization and the coaching.
This inspirational talk could be held as part of a whole department offsite, internal conference, or regular town hall event. The idea is to get visibility of the technical coaching programme and encourage developers that they would benefit from taking part. Emily Bache is an experienced and engaging speaker.(See Speaking)
Following the keynote, hopefully many of the teams will come forward with an interest in taking up the coaching. Each team should be offered an inspirational workshop. They would prepare some code samples from their own codebase to share with the coaches, and the coaches would prepare an inspirational demo to showcase some techniques the team could potentially learn. The idea is to build a good mutual understanding of the team’s situation and what the coaching could offer.
A team should always be offered a choice about whether to go ahead with Samman Technical coaching. The best results come when the team has a positive view of the coaches and is open to learning new skills and ways of working.
The coaching method we use is called “Samman”, which comprises a mix of training and hands-on consulting in the team’s own codebase. We work with a network of coaches from the Samman Technical Coaching Society - an organisation that Emily heads. The idea would be to find a good match between teams and coaches, and offer regular remote coaching sessions over a period of weeks.
In our experience you get the best results when each team has regular meetings with one or two coaches who they get to know and trust. The coaches are not present full-time since the team needs time between sessions to reflect on what they have learnt and to incorporate the new ways of working into their daily routines. We estimate that most teams will benefit from 8-10 half days a month with a technical coach. Each coach may work with 1-4 teams and also offer tailored training to these teams in a “learning hour” format.
The technical coaches are all supported by a senior coach who will step in to sessions as needed and provide additional learning hours. We may also find people in your organisation who want to step up and begin technical coaching their teams. This is very possible with the support of a senior technical coach.
The team and their leaders can reflect on the benefits from the coaching and carry on with it as long as it is still worthwhile. We suggest tracking the team morale, attitude to writing tests, confidence refactoring safely, and long term trends in code quality.
For more information please contact us.