Agile All The Things: WSJF Outside Backlog Management

We’ve been experimenting with the Weighted Shortest Job First (WSJF) framework at PagerDuty as a prioritization exercise.

In short, WSJF tells you to put everything you want to do on a list, then look at projects or opportunities that are the best combination of valuable, urgent, and cheap. It’s not rocket science, but it’s a simple to learn technique that lets teams chew through large backlogs quickly.

I recently adapted this framework to help me prioritize personal purchases. I’ve always budgeted between rent, savings, and spending, but I was interested in making sure that in the “Spend this on whatever” category, I’m actually buying the things that are the most valuable to me.

So I made a few high-level categories, adapted from the WSJF ones:

Value:

How happy will this thing make me when I use/experience it?

Frequency:

How often will I use it? Once every few months? Multiple times a day?

Urgency:

All other things being equal, how much would you prefer to have this now vs. later?

Opportunity:

Does this let me do something valuable I couldn’t do before? This is great for calling out diminishing returns for upgraded models of things. For example, if you didn’t have a bicycle, it would probably get a 13 or 20 here, because of all the new things it lets you do. If you already have a bicycle, though, a better model would probably only be a 2 or a 3, because it doesn’t actually enable you to do much else.

Opportunity should also include reduction of risk. For example, a bicycle helmet (if you don’t already have one) would probably be a 13 or 20 here. Same with health insurance.

Lifespan:

How long will this thing probably last, in years?

Cost:

What will this thing cost you to buy and own, in dollars? Making this net dollars (what you’ll buy it for, plus maintenance and ownership costs, minus what you can sell it for) puts a more accurate number on large goods like cars and houses.

For costs that include some time away from work (say, another degree or a long vacation), make sure to include the opportunity cost (wages, continuing to pay rent while you’re gone, etc.)

Once you have your columns, list items you’d like to buy and assign a top and bottom value for each column. The exact numbers in each column don’t matter. In fact, we specifically choose a modified fibonacci sequence (1,2,3,5,8,13,20) to make ourselves stop thinking about the specific numbers and instead think about the values relative to each other. All that really matters is that you have something that represents a “1” – the lowest possible value you can think of, and something that represents a “20” – the highest. If this is confusing, see some sample norms I used here.

The final column is:

(Value + Frequency + Urgency + Opportunity) / (Cost / Lifespan)

WSJF Sample Sheet

The spreadsheet I used to do this is here, with all the calculations built in. Feel free to clone it for your purposes. The second sheet, here, contains some rough norms for the numbers.

What you end up seeing is that a few things float way up to the top, and a few sink to the bottom.

I discovered that getting an IKEA rug to cover up my bedroom floor was way up on the list, because of how frequently I’d use it and how cheap it is, while some additional motorcycle protective gear was also way up there because of the risk reduction. Down near the bottom were items that might make me a little happy, but ultimately don’t add much in the way of new opportunity – better headphones when I already have perfectly decent ones, for instance.

You can suss out diminishing returns by putting multiple models of the same item up on the sheet. Our place was getting a little dirty, and I realized the biggest barrier to people cleaning was not wanting to take out and lug around the big floor vacuum in the closet. I looked on Amazon, and found a $60 dust-buster style vacuum, and a top-of-the-line, $200 Dyson version. Then I had to ask myself: will the Dyson provide more value? Will it last longer? Will it do anything better proportional to the actual cost? I decided that it would deliver a little more value, but be equivalent in the other categories, which produced a score of 12 for the standard vac and 4 for the Dyson.

The final insight that emerges is that small purchases ($10-20) that help you in one or more areas are almost always worth it. If you know something will be a 5 or more in value and opportunity, and it will last at least a year, you can do some mental math to figure out that it’s going to produce a WSJF of at least 7, and is probably worth just buying. (More reading on small-decision rules: Ben Casnocha Thomas Rogers)

There are a few things that I haven’t figured out yet:

  • Extremely high-cost items (houses, college educations): When you start getting into the hundreds of thousands to millions of dollars, even 20’s across the board for value get divided down into nothing. In the software world, the whole point of this is that you cap costs at 20, to evaluate everything relative to everything else. When we’re doing cost in dollars, though, we don’t get to cap it.
  • Time value of money: WSJF helps rank purchases against each other, but it doesn’t incorporate a mechanism to show the value of not buying anything. This isn’t a problem for software development teams, where you always want to be moving forward on something, but with personal money you want to think about how that money would be better spent if invested.

At the end of the day, applying this framework has helped me feel a lot better about purchase prioritization I have a simple rule: if I want to buy something, and it’s more than $10, it needs to go on the spreadsheet, and I have to put in the scores. The simple additional barrier of having to pull up a spreadsheet already helps with impulsivity, but the real value is taking whatever you were thinking about, and asking yourself, in a rigorous way, whether it’s more valuable than other uses of your resources.