DEV Community

Cover image for Prioritization while making progress
Chad R. Stewart
Chad R. Stewart

Posted on

Prioritization while making progress

Introduction

I wanted to quickly follow up on the making progress article because I realized recently that there was something missing from my approach.

So I mentioned how to make tasks that will help you reach your goals but I didn’t say how to prioritize them. Effectively, all the tasks you come up with would have equal weight and it would be expected that you complete as many of them as you can each week. This doesn’t take into account their importance or their likeliness to move you towards your goals. So I wanted to talk about this quickly as supplemental information.

What is Prioritization

So prioritization is the act of identifying what are the most impactful things you could do with the time you have. For example, you have a list of tasks as a Software Developer. You could fix a bug that could potentially cause an outage or you could work on a new feature. You are confident the feature can add new users to your software but you’ve identified that the likelihood of the bug to occur is pretty high. So you decide to immediately work on fixing the bug. Situations may not be as straight-forward as this example but this gives you an idea of what this would look like.

How to Prioritize

So how do you prioritize your tasks? Honestly, I’m pretty new to doing this myself so I’m primarily going to defer to Kun The Engineer who created a video on this topic:

How to do Prioritization as a Software Engineer (From L8 SWE at Microsoft)

In this video, Kun talks about the importance of prioritization as an Engineering Leader and then gives a process on how to prioritize tasks. To give a quick synopsis of the video, he proposes using a system which he mentioned has been battle-tested by several teams and has been shown to be very effective. The system is Priority = Impact x Confidence / Cost. Impact here being the value of the activity being successful, Confidence is how confident you are in being able to accomplish the task and Cost being the estimated amount of time (this example is in days) it would take to attempt to complete the task. I don’t want to take too much away from the video, I highly recommend watching it as he does a great job of explaining the system by going through an example.

He also has a worksheet that he shares in his blog on this topic which you can find here.

Worksheet with items filled out and weights
Image of worksheet in action calculating a priority after describing a cost, impact and confidence

The reason why I wanted to point this out is I realized that this process works very nicely with the habits I talk about in planning for your week in the previous article. While the example he works on is more long-term, it can be used for more short-term goals. The main strength here is the addition of data. Personally I make a list every week to say what I need to do each week and I’ll be adding the work I did to come up with my prioritization. While the data is far from precise, it’ll give me an idea of the types of tasks I’m taking on in terms of impact and this’ll give me an idea if I need to switch my focus to something else.

Conclusion

So I just wanted to touch on this quickly cause I think this would be a great addition to what I had talked about earlier. I am still learning myself but this is definitely an important skill to point out and so I wanted to share this with everyone as well!

  • If you found this article interesting, please feel free to heart this article!
  • If you’re interested in learning more about Front-End Engineering, follow me here on Dev.to and Twitter.
  • If you’re looking for jobs, I’d highly recommend checking out @TechIsHiring on Twitter, LinkedIn or TechIsHiring's new website https://www.TechIsHiring.com/ for posted jobs and other resources!

Top comments (0)