002. Prioritization
One of the first things I do when coming into a new company is figure out where people are writing tasks down.
The phenomenon I call Task Sprawl is an insidious beast. It spawns slowly, feeding on the best intentions of issue-labellers and kanban-board-organizers. Its hold on your organization's productivity is carefully disguised as reassurance and oversight. Very rarely will any long-term team members be able to detect its presence -- it's simply been there too long, imperceptibly embedded in the process, like paint on the wall.
Task Sprawl symptoms include:
"I don't know what to work on next."
"You spent all of last week on A. Did you do anything for B?"
"Did anyone write down the decision we reached about that bug last week? Where is it?"
"Is XYZ finished yet?"
If your organization is like most, you may have a bit of a Jaws-like feeling about now.
Task Sprawl has a much more significant impact than just the time required to fumble through conversations like these. It can lead to a feeling of overwhelm in managers and engineers alike. It contributes to indecisiveness. It removes autonomy and the initiative to problem-solve from your senior developers. It slows down everyone's ability to produce. In other words: lost time, increased stress, wasted money.
There's only one solution to Task Sprawl: a central, single, prioritized task list.
If that sounds unachievable, if you're already sure of a dozen reasons why it wouldn't work... I hate to tell you that the problem might be you.
Don't worry. Just like other topics covered in these docs, prioritizing to overcome Task Sprawl is a skill you can practice and learn to excel at. Here's how.
Practice Prioritizing
The main purpose of having a single, central list is to make it impossible for any two items to have the same priority. It's a huge red flag whenever a leader says, "The team's current priorities are..."
If your priority has a plural form, you're doing something wrong. Strong leaders choose one thing at a time for the team to focus on; weak leaders say, "Everything's important! Do it all at the same time!"
There may be situations in which multiple things need to happen within the same window. In these cases, split your team and give one priority to each group. Avoid creating situations in which one person is working on more than one "priority." This unnecessarily creates confusion and stress because you as a leader failed to make a clear decision.
One thing that I’ve found helpful is to organize tasks in the form of a Directed Acyclic Graph (DAG). Identify which tasks depend on the completion of, or decisions resulting from, another task. This can help to create a pragmatic order.
Now that you know what to do, how do you get there from here?
The Quick Fix: Recovering from Task Sprawl
All hope is not lost! With sufficient motivation, recovering from this productivity-killer doesn't take long. Here are two approaches you might take depending on your situation:
You're the manager:
Explain the detriment of Task Sprawl to your team
Communicate that the goal of change is to make their lives simpler and improve your ability to help out with tasks
Ask the team where they spend the most time looking at and updating tasks (Jira? GitHub? GitLab? Notion?)
Track all your new work in that once place from now on
You're not the manager:
Explain how Task Sprawl is making it harder for you to get things done
Explain that finding information about tasks is difficult, knowing where to update tasks is confusing, etc.
If others on the team feel the same way, have them chime in too
Show your Manager where and how most people on the team are tracking work
Propose that all work be tracked in only that one place from now on
Don't spend more time moving your current tasks into the chosen tool -- that's just more effort spent on a temporary problem. Wrap those up wherever they live, and make the change with all new tasks starting today.
It can be tempting to move to a Shiny New Tool with this change. It might even feel like a welcome fresh start. I highly recommend against this.
Stick with one of the tools your team is already using. Figuring out where tasks are already being written down most of the time is a key element for avoiding sliding back into Task Sprawl in the future. Why? Because changing the working habits of everyone on the team is a high-friction endeavor. While you might be excited about a Shiny New Tool, getting everyone else to learn it and remember to use it is adding to the list of things on their plates.
We don't want to add effort; we want to subtract.
Consider the different emotional reaction the below statements evoke.
Adding: Instead of using Jira, Notion, and GitHub, we're going to migrate everything to Google Spreadsheets! It's going to be great!
Subtracting: Instead of using Jira, Notion, and GitHub, we're just going to use GitHub Issues from now on.
If you've already got a multitude of things to look at and to do in a day, which would you prefer?
The Long-Term Fix: Avoiding Task Sprawl
Whether you're just standing up a team or want to avoid falling back into inefficient habits, how do you encourage your organization or team to avoid Task Sprawl in the future?
Keeping these three D's in mind can help:
Discipline
Develop the discipline to avoid investing in each Shiny New Tool that pops up. Avoid giving in to one-off requests to track and discuss parts of work in different places. Become a watch-dog for ensuring that important discussions take place where the work is tracked. The next time a Slack conversation starts making decisions, say, "All this sounds great! Can you please help me ensure these ideas are recorded [where the work is tracked]?"
Direction
Stick to tools and processes that are directionally aligned with your goals. Where do you want your team to spend the most time? If you would like to see more thoughtful exploration of ideas and decisions happen before the building begins, choose a tool that encourages long-form text (e.g. Notion). If you want tasks to be tracked and discussed close to the work so that finding related items is easy, ensure those discussions happen where the work is being done (e.g. GitHub issues and PR comments).
Decision
Keep in mind that your business needs, customer desires, and development staff will all change over time. It's your primary duty as a leader to account for the information at hand and make decisions. One day, you may have cause to make a change, use a different tool, or split priorities over more than one team as your organization grows. The most important factor for prioritization is the strength of your leadership. Decide on which central tool to use, assume responsibility for your decision, and give your team direction.
Take it to work today:
Practice prioritizing.
Centralize on a single tool.
Ensure long-term success with discipline, direction, and decision.