Prioritization Optimization


The experience of how prioritization lead to immense benefits in my personal life prompted me to look at how we could implement a similar mindset & workflow within WooThemes.

A couple of months ago, I implemented a few "lifehacks" that would allow me to have better balance in my life (according to my unique set of variables & wants / needs). One of the consequences and / or requirements of these hacks were that I simply had to spend less time working / in front of my computer.

I wasn't ready to compromise on my professional ambition though, because I'm passionate about what I work on. So instead, I forced myself to become better at prioritizing the things that I work on / spend my time on, which meant that I could still have the same lofty goals without compromising on my work-life balance.

This resulted in a couple of things:

  1. I stopped working on things that just aren't that important right now; and
  2. I needed to get better at upskilling my team and delegating the things that I didn't absolutely have to execute on myself.

The experience of how prioritization lead to immense benefits in my personal life, prompted me to look at how we could implement a similar mindset & workflow within WooThemes.

As things stand, we have a team of almost 30 with individuals that compromises a wide array of different and / or complimentary skills. Since WooThemes doesn't just have one product; we tend to be very flexible in terms of which tasks / projects are assigned to individuals on a team. So it's impossible for to go to Developer A and tell him that he'll be working with Designer B on Project X for the next 6 months. We require more flexibility than that.

What this however means is that the resources available to the company (as a whole) always gets pulled into (what feels like) a thousand different directions at any point in time, with no overbearing analysis on what's really important to us right now. Something that is important to an individual or to a project team for example isn't necessarily congruent with the bigger goals of the company.

An example of this is weighing up the importance of fixing a critical product bug vs optimizing conversions on our website vs wrapping up the release of a big, new product. All of those are important, but it's impossible to decide on one, unifying metric that would allow us to evaluate the priority of each of those tasks.

Taking all of this into consideration, I devised a workflow that would be flexible enough (given the way we work), but will also achieve the priority focus we need to grow the company.

First step was to decide how we would evaluate all tasks / projects, because we needed a unifying, generic way to decide the value of different types of tasks & projects. I broadly define this metric as the one thing that will allow us to move from point A -> point B the fastest / easiest / most profitable / most efficient / etc. (This - in principle - is very similar to the One Metric That Matters.)

At the moment, this metric (for Woo) is: How do we accelerate growth without releasing new products?

The next step is to take all of the tasks / projects on our radar at the moment and put them into a Trello board. This is what that looks like:

Trello Priorities (Click for the full-size screenshot.)

Here's a description of the columns:

  • Backlog. All items that we've not yet evaluated, but that we'll need to prioritize in the short-term future.
  • 5 -> 1. The numbers 5 to 1 indicate the importance of the task, with 5 being the most important. We also prioritize the tasks within each column from top to bottom, with the top-most item being the most important.

Now that we can visualize what's on our roadmap and that we have a clear idea of what's the most important thing we should be working on, we can manage our resources / capacity accordingly.

The way we do that is to start assigning resources to each of the tasks / projects on the board (from most important to least important) until there's no resources left to assign. This accounts for the varying skills needed on each task / project, along with the fact that everyone is multi-tasking and won't just have one responsibility at any given time. It also ensures that we're only working on the most important things at all times. If you're doing this right, you should only ever be working on tasks / projects in 5 or 4.

Every week (or as agile as we need) we can then review that Trello board and re-jigg tasks / projects according to new priorities (regardless of whether something is actually complete). This ensures that our thinking isn't only short-term or exclusively long-term.

For this to work, we've also specifically excluded the management around any of the tasks / projects on this board. Most of the bigger projects obviously have loads of individual parts to it, but that wouldn't make sense to include them on this board. This workflow isn't to optimize management, but instead optimize our prioritization & focus.