DEV Community

Discussion on: You're going out of scope, again.

Collapse
 
craser profile image
Chris Raser

Great question. Every situation is different, but your question cuts to the heart of things: how to keep technical debt low while staying on deadline.

I'm on deadline myself, so this will be more a collection of thoughts than actual advice. I hope it's good food for thought.

  • You don't mention tests. (By that, I mean: automated unit/integration/regression tests.) If you have them, great. If not, the team should strongly consider adding them as you build new features. They'll make refactoring efforts like this much faster & less risky.
  • I really believe that refactoring is best done in support of new features. In other words, I avoid refactoring just to clean up the code. Instead, I do it when a new feature makes it clear what refactoring needs to be done, and provides a context in which that refactoring can be QAed, etc.
  • I totally support wanting to have pride in your work. And forcing your team's hand like this may be forgiven (especially if everyone likes your changes). But it really is best avoided. Communicate with your team lead/manager to make sure everyone's on the same page, and give them a chance to give you feed back on your plan.

It sounds like you're already thinking through a lot of this, which is awesome. Again, communication with your team, and with your team lead/manager is key here. It may not feel like it in the day-to-day, but you and your team will get far more accomplished (including needed refactoring!) if you're all supporting the same goals, and working from the same plan.

Cheers!

Collapse
 
guitarkat profile image
Kat

I apologized for something once because it wasn't perfect, but it got into a tight deadline. No one pressured me about apologizing or even made a comment but it was my pride and my ego talking. I think it was guilt.