Skip links

Learning culture in software engineering teams: Technology watch & Coaching (2/7)

This post is part of a series of 7 blog posts on the topic How to create a learning culture for software development teams:

#1 Technology watch

To find new knowledge, open your mind, and know the latest trends in our sector, it is advised to have a technology watch strategy. This initiative is often individual but can take a collective dimension within an organization. Its efficiency will then be reinforced thanks to the support of the company. The knowledge will come from different sources of information: blogs, tech conferences, libraries, seminars, videos, podcasts,…

First of all, blogs articles offer very qualitative content on technical subjects and working methods, the developer’s job, or professional aspirations. Each person usually has their preferences. An excellent way to start is to browse platforms like Dev.to, Hashnode, Hackernoon, or Medium, and subscribe to accounts offering content on topics that interest you. Web browser extensions like Daily.dev bring together content from various platforms in one place. Then it’s a matter of finding the best time in your schedule to spend a few minutes there: after lunch or just to take a break during the day. It is also interesting to share the most relevant articles with other team members, either via the internal communication tool (like Slack) or to list them in any other shared repository, like a Wiki.

Tech conferences are also an excellent way to monitor and meet other professionals in the same sector. Organized locally, nationally, or internationally, these days of exchanges and conferences are great for discovering new technologies and sharing feedback. Thanks to these meetings, you will consolidate your own professional network and learn more about the methods implemented in other organizations. It is common for a company to cover the logistical costs, as they see this as a training tool. Some candidates will ask about financial support and work arrangements during the recruitment process (should they take a day off to attend conferences?). In France, Devoxx is the annual Francophone conference of reference, and the largest cities around the world have their own flagship conference.

Finally, books are also precious support to learn and feed your thoughts. Some companies are setting up shared libraries, which can take the form of a simple shelf where each person can borrow books, ideally for a limited period, so that as many people as possible can benefit from them. It is a good idea that the content of this library is participatory, that is to say, that the proposals come from the people internally.

If all this seems to be the result of individual initiatives, it is not out of the question to find formats to share the content within the company. A regular 30-minute session, for example, will allow one or more people to present in more detail a topic that has caught their attention, such as a blog post. Sometimes, people who have attended several days of conferences will share feedback, and synthesize what they have discovered, so that as many people as possible can benefit from it. In the case of a book, this can be a reading workshop where we debrief together what we have understood, the points of interest, criticisms, and doubts, and discuss them openly.

#2 Technical agile coaching

Agile Coach profiles are widely present in IT organizations, however, the technical dimension of coaching is not systematic in Agile Coaching. This is where the work of the Technical Agile Coach comes in, often called “Craft Coach”, referencing the Software Craftsmanship values. Its mission is to help teams progress technically through the transmission of coding practices, which will enable them to deliver value more efficiently daily.

The program will often include skills development on software architecture (SOLID principles, DDD, …), Clean Code, or TDD. Nevertheless, the program will be tailored for each team, their level of maturity, and the issues they face. These coaches can adopt a daily immersion posture or work with the teams for a few hours a week. The number of coaches and teams to be coached will determine the amount of time that can be spent per team.

If you are interested in practicing technical agile coaching, Emily Bache wrote a book on the subject in 2021 (the first one, by the way), and presents the Samman Method in particular. This method is essentially based on the application of Mob Programming, combined with learning sessions.

During the learning hours, the coach uses exercises and active learning techniques to teach the theory and practice of skills like Test-Driven Development and Refactoring. In the Ensemble sessions, the whole team collaborates with the coach to apply agile development techniques in their usual production codebase.

The book provides much advice to optimize the added value of coaching during these Mob programming sessions. It covers equally essential topics: How to get teams on board and convince them to follow us? How do we set expectations before we start coaching?

These people will usually also facilitate communities of practice and Craft Workshops. A problem they regularly encounter was already mentioned earlier: the repetition effect, due to the unfamiliar practices of the teams, but also due to the lack of capitalization of the coaching sessions and the lack of support tools to do so. In this context, Promyze is generally a powerful ally.