DEV Community

Cover image for The Engineer's Complete Guide to Backlog Grooming📝
Alex Omeyer
Alex Omeyer

Posted on

The Engineer's Complete Guide to Backlog Grooming📝

This article is originally published on Managing technical debt blog by Cate Lawrence.

✨✨✨

Without organisation, backlog gets messy quickly and issues can’t be prioritised. Let's look at how Engineers, Product Managers, and the rest of the team members can work together to keep tasks organised.

You might be an organised checklist kinda person, or you might be hopelessly unorganised like the rest of us. It’s generally not such a big deal until you get overloaded with tasks and your team grows, making things even more confusing as you can’t decide each day what to prioritise.

Fortunately, there’s a way forward.

In this article, we’ll look at:

  1. What is backlog grooming?
  2. Why backlog groom?
  3. The role of Product Manager and Engineers in backlog grooming
  4. Backlog grooming meeting:
  5. What should be the outcome?
  6. Useful tools
  7. Backlog grooming checklist

What is backlog grooming?

Backlog grooming is one of those tasks or practises known by a bunch of other names. It's also called backlog management, refinement, pre-planning, or storytime, particularly by those who embrace agile or scrum methodologies. But you don't need to be into either of these practises to get what you need to know.

Backlog grooming is a process of regular meetings where you discuss, review, and prioritise backlog items.

Backlog grooming aims to keep tasks organised and ready to be worked on at upcoming sprints.

You're not spending time explicitly working on the backlog tasks but rather sorting and prioritising these to ensure the order of completion and time spent aligns with the bigger company goals.

Image description

Why backlog groom?

Backlog refinement meetings are about communication. They keep the whole product team up to date and on the same page. This is important in large organisations, which may work on complementary tasks or tasks that rely on finishing other tasks first and hand over for overall completion.

Without organisation, backlog gets messy quickly and issues can’t be prioritised.

This creates a vicious cycle in existing backlogs (like Jira).

  1. Issues are logged
  2. Issues lack context
  3. Issues can’t be prioritised
  4. Backlog becomes overwhelming
  5. Repeat

Pro tip 💡 To decide what to put into your issue tracker, use Stepsize VSCode and JetBrains editor extensions. Stepsize allows engineers to create issues straight from their editors and link them to code. Visibility on key issues makes backlog grooming way easier and faster.

Backlog grooming is a great way to ensure clear ownership of tasks among different people or teams.

Further, it removes the risk of scope creep by pairing back tasks to the most useful at any time.

It's not just about reporting what the dev team is working on, but an opportunity to get customer feedback (for example, customer queries, complaints, or logs during live demos).

Image description

Backlog grooming keeps a company moving forward and makes it easier for product managers and owners to plan sprints and tick off tasks.

The role of a Product Manager and an Engineer in backlog grooming

A Product Manager / Owner can be the cat herder, bringing the cesspit of procrastination to order:

  1. Scheduling sessions and monitoring attendance
  2. Setting an agenda
  3. Chairing the meeting to ensure that the agenda is on track and that the meeting moves forward instead of getting caught up dissecting a particular backlog item.
  4. Sending follow up slack messages or emails after each session and monitoring tasks completion.

As an Engineer, you can make sure you collect all the data needed to address both feature issues and codebase issues, such as technical debt.

So what do you do in a backlog grooming meeting?

Image description

The most common tasks or user stories (I'll use these term tasks for ease) include:

  • Removing outdated tasks.
  • Adding new tasks
  • Prioritising tasks - including assigning them to specific people.
  • Breaking urgent tasks into smaller deadlined tasks across several people.
  • Identifying and addressing roadblocks to task completion. These can include dependencies where a bigger task cannot be completed until something else is handed over.
  • Updating time estimates for each task.

What should be the outcome?

The product manager should leave the meeting with your next sprint or two planned and prioritised.

Overall, in product backlog refinement, everyone should leave with a feeling of shared understanding. This means that tasks are set, assigned and time estimated to align with bigger product or project priorities. ​​

Useful tools

You'll see plenty of articles about product management and backlog grooming best practises that talk about using whiteboards, sticky dots, sharpies and sticky pads. Ignore them, if possible.

Having a shared screen (heck, use a projector in a physical meeting) and a planning board is much more effective as no one needs to take notes later.

The product person will be chairing the meeting, and it's hard to do this and take notes, so someone should help document.

It's worth adding; you probably have the tools you need already -- no one wants another single task tool that integrates poorly.

But for great integration:

  • Stepsize integrates with the issue trackers, such as Jira and Linear, to help engineers create, view, and link issues to code directly in their editors.
  • Monday has fully customisable backlog templates to organise, manage, and prioritise items in one central space.
  • Kanban boards can also be filtered by people, due date, progress, priority tags etc.
  • And of course, there's Jira. (Which work best together with Stepsize, of course)

Backlog grooming checklist

☐ Assign meeting owner.

☐ Set agenda and regular scheduling (e.g. fortnightly).

☐ Host meetings.

☐ Leave the meeting with clear deliverables including tasks allocation and due dates.

☐ Discuss codebase issues. It's easy to just focus on the next item to be shipped. But don't forget that sprints are also about maintaining a healthy codebase and managing legacy code.

Discussion (0)