Before diving into a new feature, I always tell my team to scout the parts of the codebase that will need to change. As we explore, refactor for clarity. These cleanup changes get their own pull request1 (PR) before we touch the new feature. This PR shouldn’t change functionality, just tidy up the existing code. This gives us a few big wins: Better estimates: We can estimate the feature’s timeline more accurately now that we have a much better sense of what’s about to change. Smoother r...