Holidays can be a challenging time in software development. How can you make the most of your velocity and energize the team at the same time?

The holiday challenge

For a lot of teams, the holidays are a time of year when a large amount of peope take off after saving their PTO for the whole year. This time is precious, especially for those who work with e-commerce after getting through a rough peak season spending long nights making sure all the promotions went as scheduled.

SNL Holiday Band

What this means in practice, is you have a sprint with limited capacity or you have people coming in and out (depending on their schedule), carrying a lot of overhead with context switching and minimal communication throughout the week.

So what can be a better option?

Spread the holiday cheer with a tech debt sprint

The reality is, your holiday sprint isn’t going to be the most productive sprint of the year. More often than not, you’re met with chaotic schedules that are hard to truly plan around.

For example, you have Joe visiting his family, maybe he can snag a few hours between get-togethers. Then you have Nancy who’s working the full week, but only at night, as her days are packed with holiday activities. Finally you have Todd who used his PTO early in the year, so can’t take any time off, but is working his standard 9-to-5.

It’s hard to imagine having a regular daily standup cadence, let alone figuring out if and when a ticket will be get completed. So instead, schedule a sprint dedicated to tackling the technical debt that’s accrued throughout the year.

Wait, what is technical debt in the first place?

For a lot of devs, there’s a daily balance trying to determine whether the bug or concern that popped up warrants blowing up the scope of a ticket or if it’s better to dig in and fix it as they’re working through it. These things can take a toll on a team, leaving spirits low, knowing they’ll never actually get the opportunity to loop back and course correct.

Just because this concern isn’t going to bring the app down, that doesn’t mean it’s not valid and doesn’t need to be taken care of, so instead of fixing it, the next course of action is to throw it in the backlog for a rainy day.

The problem is, this rainy day doesn’t seem to ever come. That backlog of not-really-high-priority tickets adds up becoming a mountain that will throw you into technical bankruptcy!

Ghosts of Christmas past

Take advantage of the chaotic schedule

With everyone’s schedules in flux, it’s a good chance to find a backlog of narrowly scoped tickets that your team can work through on a case by case basis.

Have a few code paths that lack some tests? Perfect ticket. Have a few fragile functions that already have tests but need to be refactored to avoid future grief? Put it on the list.

This type of work–while small in the overall picture–can make a difference in how your team perceives their own work, which directly impacts their attitude towards the project.

Remember what’s best for your team

Overall, the point is to do what’s best for your team. Low spirits can impact a team’s velocity, so being able to provide these little wins can end up helping in ways you wouldn’t have thought of.

Whatever your strategy may be, it’s important to enjoy a stress-free holiday season whether you’re taking PTO or not.

Carlton dancing during the holidays

Find more JavaScript, UX, and other interesting things from me on Twitter.

Read more of my articles on element84.com.