_Because technical coaching is not yet very widespread

It is important to us to answer any questions you may have.

What is an efficient organization?

It is an agile and product-oriented organization, which applies the principles of Lean Management and the practices of Continuous Delivery. Its organizational culture is generative and its ability to deliver is effective.

Efficient organizations share several characteristics:

  • Cooperation and collaboration between multidisciplinary teams is strong

  • The responsibilities of each team are shared and concern everyone

  • The problems encountered are escalated without fear and are valued

  • Team experimentation is encouraged

What is technical coaching?

Technical coaching aims to improve the performance of the organization by focusing on the culture and practices of the teams by supporting them in their skills development for better control of their code and their pipeline.

The coach’s scope of intervention is wide: participation in the reorganization of teams, processes and interactions based on the coach’s observations (in close collaboration with management). It accompanies individuals and the organization in the process of change and optimizes the use by the teams of the support and service levers internal to the organization.

What is a technical coach?

A technical coach has both a strong agile culture and solid technical expertise. Centered on the human being, he turned to coaching to transmit his knowledge, the passion for his profession and his culture.

What is the role of a technical coach?

Its role is to intervene with the teams to transmit good practices, the correct use of tools and the right culture in order to guide the organization towards sustainable efficiency:

  • Increase the skills of the teams on their development practices (tests, clean code, refactoring, TDD, clean architecture, etc.) and make them gain autonomy

  • Improve the organization of the team’s work by promoting collaboration between the different actors (business and technical) through the implementation of BDD and DDD practices

  • Improve the ability of teams to deliver by applying Continuous Delivery practices in order to streamline the value chain of the products they develop

  • Measure the performance of the Delivery teams in connection with the practices implemented in order to support change

  • Instill a culture of continuous improvement within the organization by creating communities of practice for developers and promoting sharing between technical profiles

Because it is transverse to the organization, the technical coach can act either at the level of top management (top-down approach) or at the level of the team (bottom-up approach), in order to have a systemic impact. global.

How does coaching adapt to the context of each team?

Each team is different: some are agile, others are not yet. They can be product oriented while others still operate in project mode. Sometimes they are very isolated or on the contrary they are multidisciplinary teams.

The maturity of the teams in terms of culture and practices is heterogeneous and that is why we adapt our coaching to each context.

We always intervene in an iterative manner in order to be able to regularly measure our impact on the performance of the team through the quality of product developments and its ability to deliver.

Our coaching approach adapts continuously in a pragmatic way according to the needs and context of each team, both in terms of timing and posture of the coach.

Sometimes it’s not the right time to coach a team for different reasons:

  • Reluctance and fear of coaching, difficulty in establishing a healthy relationship of trust

  • Low interest of the team on the new practices proposed

  • Peak of activity with short deadlines

  • Value of coaching not perceived by team management

The posture of the coach varies according to the needs:

  • Tech lead / Role model to lead by example and to address technical issues that the team cannot solve alone

  • Mentor to more junior profiles who need to improve their skills and gain control and autonomy

  • Coach to introduce new practices within the team and support its progress

To meet these challenges, we operate iteratively with In & Out cycles (In: the coach is in immersion in the team / Out: the coach steps back and remains in support of the team), which creates a dynamic of continuous improvement within the team:

  • By setting an ambition at the start of the “in” cycle and objectives to be achieved at the end of the cycle

  • By measuring the results at the end of each cycle

  • By adjusting the accompaniment (postures of the coach, projects carried out, attendance time, etc.)

Our support is also based on this iterative approach, which makes it possible to readjust our scope of action, the number of teams coached, and to address more cross-functional subjects.

How does the technical coach intervene within the teams?

He intervenes in immersion within the teams in order to be as close as possible to their daily life and he will rely on their backlog to propose new practices which will be adapted to the problems they encounter.

For each new practice introduced, the technical coach will start by introducing it in a controlled environment (learning hours, kata, live coding). Then, in order for the team to gain competence in this practice, he will gradually introduce it into his daily life on his ongoing development tasks. For the practice to be fully integrated, it takes time and repetition.

The technical coach will alternate two complementary approaches:

  • Group coaching (in mob programming), the coach works on a feature of the backlog, to share the thinking in terms of design and architecture, their testing and delivery strategy, etc.

  • Individual coaching (in pair programming), the coach focuses on a problem to be solved or a practice to be deepened.

How many teams can a technical coach support?

Depending on their size, their availability and their motivation, the number of teams that a technical coach is required to support varies according to the context and the environment of his mission.

At the start of the support, it is preferable to start with a single team and then gradually increase this number over the following cycles. The In & Out cycles (In: the coach is in immersion in the team / Out: the coach steps back and remains in support of the team) allow the coach to support the teams in parallel and gives him a greater flexibility in its intervention.

We recommend not to exceed 3 teams accompanied in parallel in order to maintain flexibility in the event of hazards (emergency management, focus on a particular team if necessary, etc.) but also to allow the coach to contribute to cross-functional projects (create a coaching service offer, deploy performance measurement indicators, raise awareness among businesses and top management, etc.)

It is important to note that the mandate of the technical coach is likely to evolve during his support in order to be able to adapt to the changing needs of the client while maintaining the approach of seeking systemic impacts.

How do I know if my teams need technical coaching?

In order to help you determine if your teams need to be accompanied by a technical coach, we invite you to observe the difficulties they encounter and the pain they feel.

If you find that your teams:

  • Have more and more difficulties to deliver frequently and that each delivery is more and more painful

  • Produce code whose quality deteriorates over time and their technical debt continues to grow.

  • That despite a new organization of work, they continue to feel the impression of working in silos and that they are unable to appropriate the new roles and responsibilities assigned to them

  • That they gain new responsibilities in the value chain of the products they develop but fail to develop sufficient skills to meet them.

This is when you have to step in and call on a technical coach to help you restore their confidence, regain control of their code and their delivery, create commitment, passion and retain talent.

How to determine the teams to support?

To choose the right teams to support, it is essential to take into account several prerequisites:

  • Favor the most motivated teams (those who show interest in technical coaching) because a team that wants to improve will give itself the means to do so.

  • Check the support of the PO and the manager for their team so that they can have the necessary time to improve their practices (reduce the number of delivery constraints for the team concerned).

It is also important to choose the first team that will be accompanied because it is the team that will be shown as an example and which will be shown as an example by the management and observed by the other teams.

My teams are not motivated, what should I do?

You are convinced of the value of technical coaching and you have just welcomed a technical coach within your organization and yet your teams are not motivated to be accompanied.

This is completely normal !

Although you make the same observations on the difficulties and the pains that your teams encounter, it can be very difficult for a team to accept being helped because it can be experienced as an admission of failure.

The coach can also sometimes be perceived as sent by the management to monitor what the teams are doing. A team does not necessarily want to reveal its weaknesses and will naturally protect itself by closing the door to technical coaching.

It is therefore essential to raise awareness among the teams in order to gradually arouse their interest:

  • By promoting the sharing of the first teams supported on their learning but also the difficulties they encountered with the rest of the organization through the communities of practice

  • By opening up to other teams the work sessions carried out with the supported teams in order to reassure the approach and show the value brought to the teams

This will be a real trigger thanks to the influence on the other teams and the organization, which will facilitate the coach’s mandate with the management and will allow the next teams to be supported with confidence.

What are the key success factors of technical coaching?

For technical coaching to bring all the expected value, we have identified 3 key success factors that we respect and apply in the context of our missions.

  1. Diagnose the level of maturity of the teams and identify the relays of confidence within the supported teams so that the technical coach has all the cards in hand to carry out his support and that he is able to convince the team to investing time and energy in new learning.

  2. Factually measure the results of technical coaching:

    • its outputs: means put in place through new coaching practices (learning and mastery of practices by teams, autonomy, etc.)

    • its outcomes: the results on performance (impacts on the team’s delivery capacity and on its performance)

  3. Share what has been learned to demonstrate the value of new practices in order to seek a systemic impact within the organization by seeking to establish a true generative culture conducive to improvement.

The objectives change or the needs of the teams grow, how does the technical coaching adapt?

Technical coaching is agile in nature and works iteratively.

The system is reviewed regularly between the coach and management (quarterly for example) to ensure that we are always aligned on ambitions, scopes and objectives.

This thus makes it possible to revise upwards or downwards the number of coaches intervening on the perimeter according to the new needs which would have been expressed during the first cycles of accompaniment.

What is the role of management towards the coached teams?

The role that management plays is essential in the success of technical coaching support because it is he who will:

  • Bring the ambition to the organization to facilitate the intervention of the coach within the teams.

  • Allow teams to devote time to learning new practices to have a lasting impact.

  • Support the teams in their learning: sometimes, the teams can get discouraged during the learning process, it is necessary that the management come in support to sustain their efforts over time.

Is it normal to observe a drop in team performance during technical coaching?

Learning new practices is far from linear.

The euphoria of the start can run out of steam if it is not supported by training efforts. This shortness of breath is commonly called “the learning trough”. It manifests itself in a drop in the general performance of the level of the team.

The common mistake is to conclude that the learning method is not working and that you have to go back to the front. This is exactly when you should never give up! The hollow means precisely that the methods are being acquired and that there are adjustments to be made.

The support of the technical coach but also of the management with his teams is decisive in encouraging them to persevere in their increase in skills. It is perseverance that will lead the teams to significantly exceed their previous level!