You’ve spent a lot of time and money to build your website. It’s looking good but you’re just not jiving with your development team anymore. Maybe they’ve gotten really busy. Perhaps their communication started lacking. Maybe they got really expensive all of a sudden. Regardless, you’re looking for someone new. No hard feelings.
Your developers assured you they’re using the latest technology and always adhere to industry coding standards. Even though something went sideways in the relationship, they always seemed competent and you didn’t have any reason to doubt their technical abilities.
You start talking to new developers and you hear an unexpected response.
“Yeah, we can work on your project but we need to rewrite the entire website.”
What!?
The website looks and works exactly the how you’d like. Why would it need to be rewritten to add a few features?
I’ll start by giving a little background into the psyche of a developer.
In many instances, there’s just one developer working on your project at a time. They’re working on it every single day and make important code, and sometimes business, decisions hourly. It’s up to the developer to decide when a decision needs to be elevated to a project manager or if they feel comfortable making it on their own. This constant investment in the code creates a very high level of ownership because the project’s outcome is essentially a reflection of that developer.
This deep understanding also creates a lot of benefit. If a bug is found in the project, they know how to fix it instantly. If a new feature needs to be added, they can estimate the time with fairly high accuracy. That developer has to live with all the code decisions he’s made to this point. He knows where he made mistakes, where optimizations can be added for improvement and where he had that moment of excitement after creating a new feature.
As a developer becomes more experienced, they develop a style, preference and process that’s uniquely theirs. It’s not surprising that other people’s code often looks disorganized.
This is also why developers will often suggest redeveloping a feature or project. It might work OK now, but they know if it’s rewritten it’ll potentially work even better and they won’t have to spend hours trying to figure out how it’s built.
At times, a site should be redeveloped. Other times, absolutely not.
Unfortunately, if you don’t have a technical background you might not know when to spend thousands for a redevelopment versus simply finding a different company. There are a few reasons a site might legitimately need a rewrite.
The site was developed on older technology
Even if your site was developed recently, it might have been developed on technology that isn’t well supported by its creator or the development community. If that’s the case, and you’re looking for a new company, it might be hard to find someone.
For example, CodeIgnitor’s creators stopped supporting the framework in 2013. That doesn’t mean that every site built on CI will stop working but it does bring to question the future of projects built on the framework. If someone didn’t take it over, the technology would likely die off slowly and developers wouldn’t learn the platform. Fortunately for CodeIgnitor, 15 months later a technology institute took ownership of the project.
The current technology isn’t scalable for a growing business
If your website is growing rapidly, there’s a good chance the site simply wasn’t built to handle the increasing workload or requirements. We’ve worked on sites that took on features we never would have expected years ago. When you’re not sure about future growth, it’s hard to plan for it.
In these instances a redevelopment often makes sense so as the site grows it can handle the new requirements.
The site was coded poorly
As much as we hate to admit it, sometimes a site was actually coded very poorly. When this is the case the maintenance cost of the site will eventually cost more than developing a new site. It’s a tricky balance to determine when a redevelopment is right but more often than not, if the site is expected to live for awhile, it should probably be redeveloped.
What’s most important is that you’re making the right decision for your project. Here are a few questions for your current or future developers that will help you determine if your site needs an extensive redevelopment.
1. Do you take over existing projects?
Some companies only build new websites and don’t take over current projects. Make sure the company you’re talking to is willing to take over an existing project before continuing talks. If they won’t, then their recommendations may not be in your best interest.
2. How long will it take for you to investigate my current code base?
At ParaCore, we generally charge an engagement fee if we’re looking to take over an existing project. The fee includes time to get familiar with the site’s hosting, code and overall structure. I’m not comfortable quoting a project until my developers give me some idea of what we’re getting into. Even then, be prepared for overages as seemingly small updates can turn into long code reviews to find the fix.
3. How will rewriting the website benefit the project?
It’s important to look for clear benefits when someone is suggesting a rewrite. If they simply say “Technology A is better than technology B” then that’s not a very convincing reason for spending significant time and money.
Look for answers like: “If we redevelop the site on technology A, then the speed of adding new features will be improved by 30%-50% thus saving you x dollars.”
Another good example would be: “Technology A wasn’t created for a project like yours. By using technology B we can add the custom features you want without being constrained by technology A’s structure. This will give us more flexibility, improve stability, reduce bugs and allow for unexpected features and growth in the future.
4. Do you specialize in technology X?
Not every web development company has the experience to work on your site. If your site is built on Laravel and the company your interviewing does not have developers that know Laravel, then they’re not a good baseline for a big redevelopment decision. They might suggest a change just because they aren’t familiar with the technology and its benefits.
5. Why will your development be better than my current site?
Just ask flat out why their websites are better. If the company can’t articulate the value of recreating a site, they might not have the foresight to build the next site with your business objectives in mind.
Every project obviously has its own circumstances, history and goals. Just ask a lot of questions.
If the development team you’re talking to isn’t willing or able to clearly outline their reasoning, you might have a hard time working through problems in the middle of a project.
Redesigns and redevelopments aren’t inherently bad, but it’s important to know if it’s a good investment or waste of money.