Should I try to fix software solution or rewrite it from scratch?

In the world of coding, there’s a common puzzle – should you try to fix a problematic software or just start over from scratch? It’s a question that bugs developers on the regular. Let’s dive into the whole fixing versus rewriting dilemma that every developer faces.

Factors to consider

Business Goals and Needs: In the tech world, we love playing with new things, but we need to stay practical. If the current software isn’t doing what the business actually needs, a redo might be the way to go, because fixing it might not be worth the time and effort.

Current State of Solution: If the code is in good shape, easy to work with, and doing what it should, go ahead and fix it. But if it’s a mess and not doing what it’s supposed to, starting over might be the better call.

Technology Stack: If the old system is running on outdated or unsupported technology, doing a full rewrite is the smarter long-term move.

Resources and Cost: Rewriting a big system is a massive project that takes time and money. Make sure you’ve got the resources and budget to handle it.

Urgency of the Project: If the software isn’t keeping up with what the business needs right now, a rewrite might be needed to add new features or use the latest tech.

Expertise of Development Team: If the team knows the existing code well and can fix it up efficiently, that’s usually a better choice. Refactoring the existing solution can be quicker and more practical.

Data Migration and Legacy System Integration: If there’s a lot of data or integrations in the old system, moving all that to a new one can be tricky. Consider the challenges and risks before deciding to rewrite.

User Impact: A complete rewrite might mean downtime for users. If that’s a problem, making smaller fixes could be a better option.

Risk Tolerance of the Company: Some companies are okay with taking risks, others aren’t. If your company likes risks, a rewrite might be fine. If not, stick to fixing.

Hybrid Approach: Sometimes, doing a bit of both works well. Make small improvements to the existing system while adding new features with modern tech.


There’s no one-size-fits-all answer to this problem. Think about the specifics of your situation before deciding what to do. Whether to fix or rewrite depends on a bunch of factors, not some clear-cut rule. Share your thoughts and experiences – how do you usually tackle this dilemma?

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *