DevOps Institute

Understanding and Reducing Team Cognitive Load

Humans of DevOps

Last updated October 3, 2022

By: Tom Henriksen

Team Cognitive Load is an interesting idea. I have heard other people discuss cognitive load and how it relates to developers; the team aspect is a new wrinkle to me. Recently I had the privilege of talking to Manuel Pais. He is the co-author of a book called Team Topologies about team structures and how they should work together. Manuel starts by talking about how cognitive load from the individual perspective can affect each one of us. Then we look at teams who must juggle different aspects of the application. Naming the problem is a big step. Manuel points out that many teams feel this pain. Now that we have a name we can begin to address this issue that teams face.

Three Types of Cognitive Load

  1. Intrinsic cognitive load –
    Intrinsic cognitive load is the cognitive load that is inherent in the task itself. It is the amount of effort required to understand and complete the task. There is a limited amount of Intrinsic cognitive load that can be handled at one time, so tasks that are complex or require a lot of mental processing will have a higher intrinsic cognitive load. This deals with the skills we need to understand. For instance, Java developers need to know how to write classes.

  2. Extraneous cognitive load –
    Extraneous cognitive load is the cognitive load that is not inherent in the task itself but is added by the environment or the way the task is presented. Extraneous cognitive load is the tasks around software delivery. A few examples Manuel shares are provisioning a resource, deploying and application, and monitoring an existing application.
     
  3. Germane cognitive load –
    Germane cognitive load is the cognitive load that is necessary for task completion. It includes the Intrinsic and Extraneous cognitive loads, but it is limited to the tasks that are essential for completing the job. This type of cognitive load allows people to focus on the task at hand and reduces distractions. This is the business domain we must know. If our application is a banking system we need to understand how that works. This can have subtle changes for each company.

Cognitive Team Overload and Performance

All of these factor into team performance. Manuel points out that teams can be overloaded. If this sets in, the team can take shortcuts that lead to quality issues. Another aspect of the team being overloaded is demotivation. He shares how we must remember Daniel Pink’s book Drive,here he calls out three parts to motivating a team: Autonomy, Mastery, and Purpose. Cognitive team overload is a state of mind where team members are so overloaded with cognitive tasks that they cannot complete them effectively. This can lead to frustration, fatigue, and mistakes. It can be caused by a high intrinsic cognitive load, extraneous cognitive load, or a combination of both. To reduce cognitive team overload, it is important to reduce the amount of extraneous cognitive load as much as possible. This can be done by eliminating distractions, simplifying tasks, and providing clear instructions.

The Importance of Autonomy

We expect our teams to be autonomous. This is easier said than done. A team must have the time to make the decision. When numerous deadlines hang over them they may just quickly decide. They also must have the pertinent information they need to make decisions. However, if the data they use to make a decision is outdated they will likely choose poorly. We need to ensure the team has the time and information to choose a solid path. This means that team members are able to make decisions about how they will complete their tasks without needing approval from a manager. This can lead to increased creativity and efficiency, and it can also help to build team morale. Increased team autonomy can also lead to better communication and coordination between team members.

Evaluating Team Interaction

The way teams interact needs to be called out. Instead of just letting things happen we need to be intentional. If we let things happen in varying fashions this increases the team cognitive load. What does intentional communication look like? When we create means of interaction, for instance, the build team needs to interact with the API team. Think about how that information should flow. Try to enable communication so it doesn’t overwhelm the team. Perhaps the team prefers to be contacted via Slack. Some teams want all changes to come in via Jira. Others may want teams to share them during certain meetings. Simplifying communication helps reduce the team’s cognitive load.

Limiting Interaction

Manuel also shared that we need to limit the interaction. Contemporary software can rarely be made by one team. As a result, we shouldn’t have unlimited interaction with other teams. Similar to noise in a public space, this can be a distraction. This can seem counterintuitive in that more interaction seems better. This can overwhelm the team and degrade performance. The level would probably be different for every team. So adjust as needed to the level the team desires.

Team Structure

Teams can come in various forms. One team type is the Enabling team. This is a team of experts in a domain. For instance, we might have a Test Automation Enabling team. They would work with teams that need to improve their Test Automation. The engagement would be limited while they train the team and t hen coach them in the area to a level of competency. Stream teams are aligned with the business. They produce software for the business needs. So if we start a new stream team they might need help from one of the enabling teams. 

In conclusion, using these techniques can help teams thrive. Instead of overwhelming the team to do everything. We can focus them on one area. Therefore, we reduce the overall Team Cognitive Load.

SKILup IT Learning blog side bar ad

Community at DevOps Institute

related posts

Architect, Implement and Scale Kubernetes in Enterprise Environments

Architect, Implement and Scale Kubernetes in Enterprise Environments

Image source gyn9038 via Getty Images A SKILup Day Event Recap  At Enterprise Kubernetes SKILup Day on March 15, 2023, leading experts and practitioners shared their stories of architecting, implementing and scaling Enterprise Kubernetes. They gave valuable insights...

[EP98] Cybersecurity: What You Should Know with Dr. Nikki Robinson

[EP98] Cybersecurity: What You Should Know with Dr. Nikki Robinson

This episode dives into the crucial topic of Cybersecurity as Eveline Oehrlich and Dr. Nikki Robinson provide key insights about what we should be aware of in this ever-evolving digital world. Dr. Nikki Robinson is an experienced Security Architect with a demonstrated...

A Great Partnership: Site Reliability Engineering (SRE) and DevOps

A Great Partnership: Site Reliability Engineering (SRE) and DevOps

Image source Yuri_Arcurs via Getty Images Achieving Speed, Quality and Reliability All at Once By Eveline Oehrlich, DevOps Institute and Andreas Prins, StackState DevOps is not a prescriptive methodology but was born out of the need to improve the software development...