Backlog as a product health metric
We strive very hard as Product People to make our products “as agile as possible” — release often so that you can pivot towards shifting needs in the market/user-base. (Resisting the urge to muse on whether there is such a thing as being too agile) While this is arguably the most widely agreed upon approach to successful product development, it has an unintentional consequence: your Backlog becomes cloudy and meaningless.
You’ve got old bugs that need to be re-validated. You’ve got fully spec’d features with tech and UX requirements defined that have been descoped. You’ve got an endless number of features that don’t fit into any specified sprint/roadmap. You most definitely have duplicates.
It is inevitable, especially at scale. The faster your product moves, the faster it adjusts, the more tickets (sorry, STORIES) get filed just to sit there for the “next sprint” — but we know these priorities can shift week over week, sprint over sprint.
“In Agile product development” we have what is called Refinement, where someone is tasked with making sure things are prioritized correctly. If your backlog is noisy, it is a good indication that you have not allocated the necessary energy towards making sure that your backlog reflects your actual roadmap. What happens over time is only the top half of your backlog is meaningful, and a long list of ideas/bugs/features that have no business being there start collecting at the bottom.
My advice?
Periodically start from the bottom and work your way up. Go through your oldest tickets/stories and YEET WITH ABANDON. Engineers pride themselves on the number of lines of code they remove from the code base — we should do the same for our backlogs.
It’s difficult to appreciate the payoff in the near-term because it is tedious, but what is left is a backlog that is actually representative of your roadmap. Why does this matter? Because it is a strong indicator that your product is aligned with an actual, tactical vision. It shows that you have actually made trade off decisions. Let those babies go. Reminder: You can always resurrect closed issues. Promise. Let them go.