All You Need is Focus

When the normal is to be distracted, focus is the main advantage a team can have

Francisco Trindade
Level Up Coding

--

Focus, by MidJourney

One of the common challenges a manager faces is improving a team’s productivity. The context varies, but it’s a safe bet that anyone who has been a manager for longer than 5 minutes has heard a variation of the “Why is this team not delivering faster?” question.

There are obviously hundreds of aspects (and combinations of them) that influence how much/fast a team can deliver, including how you measure productivity in the first place. A team is a complex group influenced by the processes it implements, the technology it uses, the people that compose it, and the organization in which it exists.

However, a rule of thumb I have been applying more often when I help managers with this situation is to ask: Are you sure your team is working on what you think they should be working on?

Unlimited Work in Progress

The technology industry has learned many lessons in the past decade. It went from Waterfall projects, where teams managed software in a very structured way, to more iterative methodologies, which value short feedback loops that are a better fit for the flexibility of software engineering. Throughout this journey, one of the teachings was that having fewer pieces of work being worked on simultaneously leads to faster throughput, the now famous concept of reduced work in progress.

The most effective way to improve productivity is to eliminate work.” ~William E. Conway Jr.

The concept of work in progress comes from Lean Production Systems, where a high amount of inventory is considered a problem since the more inventory there is, the more risk there is in the process (what if customers don’t buy it?). The same principle applies to knowledge work, where the more items a person works on, the longer they will take to complete them. Having multiple unfinished items increases the risk since the context around the work is more likely to change the longer it is in progress.

Anyone who has worked in software can understand how it makes sense. As an engineer, you gather a significant amount of context in your head to solve a problem, i.e., write code. But then, when you are about to get the changes done, another more urgent item appears. Later, to return to the original item, you need to regain all that context you previously had. And then, when you are finally about to merge your changes, you realize someone else committed work that invalidates yours — it’s time to start again.

However, if we look at a modern technology company, it seems we kind of forgot about that as an industry — or at least are not paying too much attention to it. Nowadays, finding a software engineer on a team working on only one thing is very hard.

And that is not because software engineers are easily distracted people. Modern software engineering, in the way most companies do it, is a landmine of distractions. Teams have multiple projects, engineers get assigned multiple tickets, managers pull people into side quests, and urgent items like incidents and operational work are added to the mix.

So when people ask me how they should approach improving a team’s productivity, my advice is first to be sure the team has focus and is working on what they want to work on — the initiatives that will lead to the most impact. While there are many ways a manager can lead improvement, my experience tells me that working on the right thing is the main leverage in most cases.

Remote, Individual, and Confusing

While work in progress in software engineering has always been a challenge, multiple trends in the current industry have exacerbated the problem: remote work, individual focus, and lack of leadership.

It’s obvious that remote work is here to stay and that software teams can be very efficient at working remotely. That said, remote work has made it even harder to see when people lose focus. An engineer can be trying to work on a specific problem, and then, out of nowhere, someone in the organization reaches out for help. Sure, I can jump on a quick call. The next day, their work report says, “I didn’t really have time to work on this. Got sidetracked helping someone else”. And all of this happens without anyone in the team noticing.

Another aspect contributing to the lack of focus is the importance of individual achievement in the technology industry. In many companies, the main path to career progress is to have an individual impact, which means working primarily alone on projects, delivering them from end to end. Individual work will naturally lead to distractions, as no one (or at least most people) can concentrate and focus for long periods as they tackle complex problems. It also incentivizes people to pick more work when they have slack, since more (PRs, tickets, changes) is often seen as impact.

Lastly, focus is a leadership problem. It is common to see teams and company cultures where managers are so concerned about micromanaging their teams that they cannot ask or question what engineers are working on. This situation leads to people persisting in their distractions for longer without any clear path to being redirected back. While most managers understand that limiting work in progress is important, not many will take action and establish processes to make it a reality.

In summary, maintaining a team’s focus in the current industry and environment is not easy.

Better Focus is Possible

The silver lining in this situation is that better focus is possible, and when achieved, it can significantly impact a team’s performance. If that is what you are trying to do, here are a few practical ways to achieve it.

  • Focus your check-ins on work rather than people. If your focus as a manager is each work item and how it can be closed faster, the team will also center on that. A simple way is to use your standups.
  • Follow work items from beginning to end. Become an expert in why work moves faster or slower in your team. Where does it stop? How does it usually get blocked? The more you understand it, the better you can act.
  • Pair with engineers. I encourage managers to pair with engineers who have challenges. Instead of telling people to do it differently, work with them and see their challenges firsthand. That will give you appreciation and understanding of their situation and might uncover improvements to help work move faster.
  • Remove distractions. It seems obvious, but removing distractions is an evergreen challenge. There will always be new things, problems, and ideas. An EM can help by creating the structure to gather these new items, putting them on the shelf while work in progress is completed, and bringing them back later.
  • Clarify priority. Priority is not about good vs bad ideas. It is about which item is more important between what are probably two great options. As a manager, it is also essential to continuously clarify work priorities, collaborate with product managers, and help the team understand there is a trade-off whenever something new starts.

Lastly, while the practices above are relatively simple, persisting with them might be challenging. As with any change, there will be resistance, especially when it involves practices that influence individuals’ perceived performance. It is always important to communicate, align on, define, and execute a strategy consistently to achieve meaningful results.

--

--

Born in Brazil. Living in NY. Engineering at Braze. Previously MealPal, Meetup, Yourgrocer.com.au (co-founder) and ThoughtWorks.