Why are tech huddles more than "nice to have"?

Tech Huddles play a critical role in creating high performance teams. It is not for the benefit of developers only, but also of product and end user.

Why are tech huddles more than "nice to have"?

Tech Huddles are recurring events where developers come together and discuss any technical & architectural topics, share their knowledge and learn from each other. Indeed, what is our motivation for 'spending' time on this, is it only "nice to have"?

Yes, tech huddles help teams in multiple dimensions. Let's check it out:

Keep your developers up-to-date

We are living in such an era that a technology or tool popular now may not be that valid anymore in just a couple of years. Things are evolving pretty fast and it is both an opportunity and yet a challenge to be on track. A platform for developers to follow new trends, tools and technologies help the developers and yet the product to stay up to date.

Increase team engagement & contribute to safe environment

Being a place where several developers freely speak their mind, suggest ideas, ask questions and comment, tech huddles increase overall team engagement. This contributes to a safe environment thanks to increased communication and collaboration.

Knowledge sharing

Another motivation for tech huddles is to promote knowledge distribution among developers. This enables more people in the team per topic, mitigate silos which in return means sustainable development.

Promote innovation

Having an explicit discussion platform can help developers to think new things and evolve the system. When many developers talk to each other, there may be things coming up that none of them has thought before individually. Sharing ideas interactively can result in new and better ones.

Set the feeling of ownership

We are living in an era, where developers would like to have more independence and decide on their own for bringing their best solutions for  the relevant business requirements instead of being told "how" to do things. Tech huddles can be a platform for ensuring tech excellence, increase quality, decision making all together and taking the architecture and product to the next level. This helps them to have more ownership of the product, because they are part of the decision chain. More ownership means more engagement and in the end a high performance team.

Challenge the current system and revisit the architecture

Yet another advantage could be the discussions to decrease tech debt and improve the architecture. Architecture is something that evolves, given that the team wants to do so. An evolving architecture is only possible by people pushing for that. Tech huddles can give them the opportunity to challenge the existing architecture and push for improvements.

Clear impediments for development

There are several technical challenges developers face. Sometimes, it can be very helpful to bring it to a wider audience and ask for alternative solutions. Ideally, impediments should not wait for a tech huddle, rather should be solved ASAP. Still, there may be some points, that are hindering developers from being more productive; i.e. a non-stable pipeline. Tech huddles give a platform to developers to solve such problems and improve.

How to organize?

Of course these can vary based on team and product, but in general there are similar patterns. Simply listing the topics for discussion and taking action afterwards is one way. Doing it weekly / biweekly is pretty common, but can also be even daily, monthly or on demand, that really depends. One way of listing topics is like below:

Upcoming Topics

Past Topics

So far we have discussed the benefits of tech huddles and how to approach them. Now come the challenges.

Challenges

Not everything is on the bright side. Let's mention the dark side of the moon. Some of them are below:

  • Non-ending discussions: It is nice to discuss technical topics, but tech huddles can also be overwhelming if the team can not come to a conclusion. Sometimes topics lead into other topics and they may loose the track of the actual topic and goal of the discussion. This is not efficient when it comes to time management. No conclusion, no outcome or progress mean actually waste of time.

  • Over engineering / solve far future problems: Developers may also tend to do over engineering and solve far future problems assuming that they will occur one day. As the dicussion continues, the assumption may be perceived like a fact which enforce them to solve it as soon as possible.

  • Winning a discussion: Especially in unsafe environments, people tend to try winning arguments rather than finding the best for the team and the end user. The discussion can be stuck between a group of people inside a big group. People try to invalidate the arguments of others instead of being constructive and focusing on the solution.

  • Defensive mode turned on: During discusions in unsafe environments improvement suggestions may be perceived offensive which can make some members defensive. Once this mode is there, it is not easy to get people back to constructive position again.

How to deal with them?

Above are listed only some and there can be more challenges regarding tech huddles. If you are a tech lead, you need to monitor the ambiance and react when you feel such a bottleneck. It is not easy to solve them, but there are some methods to try:

  • Call for focus: Sometimes it is good to remind developers the sentence "Out of scope", try to stick to the topic under discussion. Saying "I see your point, but it is a different topic. Let's please focus on the problem." may be helpful.

  • Remind value based thinking: Asking below questions can help:

    • What kind of value is this bringing to development, delivery and user?
    • What are we solving here?
  • Avoid Ping-Pong discussions: This is a moment, where the discussion is stuck between two persons in a big group. This is not the most efficient way of consuming the time. Asking this can help:

    • What do others think, any ideas?
  • Empathy: Before suggesting improvements about some software piece or a system, start first by asking questions to understand the reasoning behind. This will pull the relevant people into discussion, they will have a chance to explain themselves and have a feeling of being heard. Besides, there may be things that are yet not known or not visible for you. Keep prime directive in mind.

Summary

In this article I have shared what tech huddles are, the motivation behind as well as challenges and some suggestions to deal with them.

In summary tech huddles help team members to bring ideas, engage with each other, understand impediments, share knowledge and experience, and create an open discussion environment where innovation is enabled. Despite its challenges, it provides some must haves for a high performance team. Therefore, it is indeed a favor for the team and the product; it is not a "nice to have", rather a "must have".