agile: how would you plan the monthly days of refactoring to eliminate the technical debt in your team?

My team (still) did not do much to work technical debt and our code base includes a lot of TODO code, unused code, code & # 39; could improve & # 39 ;, units of @Ignore and more.

I'm about to start dealing with those problems, and while we worked on the production product and we have many other things to do, I was thinking about this strategy:

  1. An engineer will be assigned to 0.5-1x day each week to deal with technical debt, it will only work this day / half a day on code maintenance. As we have more than 4x developers on a team (6x developers), this can be once a month (and more) for each developer.

  2. We will do it use applications (plugins) such as SonarLint (, CheckStyle and IntelliJ inspection to inspect our base code.

  3. Each engineer will have to fill out a checklist of that & # 39; technique-fight-debt & # 39; since we will work module by module: check box & # 39; delete unused code & # 39; check box & # 39; finish 1x all & # 39 ;, … etc

  4. The summary will be filled after each day (in a few words, as a summary of commitment) so that the other engineer who keeps his job the following week can do it.

  5. Once a month two we will review the work / talk about this process and set the time for it to end (mid-year process?)

How can this be a monotonous / sometimes boring / unpleasant job, I find using checklists and & # 39; forcing & # 39; to the team a good idea. As I myself would love to see on a checklist and see what needs to be done. Especially since this is a job once a month.

What do you think of this plan? How would you & # 39; attack & # 39; this technical problem of debt?

Also, I'm thinking about reading more about Martin Fowler's refactoring notes.

Any other recommendation is welcome! Thank you!