When you’ve hired a software development company to build your application, and it flat out doesn’t work, it’s a frustrating situation. Your team keeps finding bugs, and your developer is unable, or unavailable, to fix them. You’ve already invested in having the software developed and you expect it to work as it should.
Most ideally, the developers who built the software will fix it. But if you’ve lost confidence in them all together it may be time to find a software development firm who can get your application working.
Here’s what you need to know if you’re looking for a developer to fix your buggy software.
1. There Will be Upfront Time and Costs
Finding a bug in code, especially code written by other developers, can be like looking for a needle in a haystack. A single software application contains thousands of lines of code, and depending on how well (if at all) your initial developers documented their work, getting a new team up to speed on your app will require an upfront investment of time.
We’ve witnessed the wishful thinking of executives who hope that a quick look at their non-working application is all it will take to get them up and running. But, if that were the case wouldn’t your current developers have managed to fix things? I mean, it’s in their best interest to fix it, and if doing so were quick and easy they would have done it. The fact that they haven’t is a very good indicator that your software has more than minor problems.
Please go into this prepared for your new software developer to spend some upfront time familiarizing themselves with your application, and source code, before they home in on and fix bugs.
2. Your List of “Bugs” is not the Full Picture of What’s Wrong
As you prepare to hire a new software development company to fix your application, your team is probably putting together a list of bugs to send them. That list of bugs is very helpful to narrow down what’s wrong, but it’s not the complete picture.
What we’ve found at Big Fish during “fix our software” projects is there are always problems that our clients haven’t noticed. For example, we had a client whose list of bugs included that some users were unable to login. After spending some time running tests on their applications we discovered that there wasn’t a problem with logging in, the problem was that many user accounts were not getting created in the first place. The user registration feature wasn’t working.
If we hadn’t taken a more comprehensive look at their software we could have wasted time focusing our troubleshooting on the wrong place. We found many other security and functionality problems that our client was not aware of, just by looking at their source code. On the bright side, we could then improve the experience for their users by cleaning up issues they hadn’t reported.
3. You Must Have a Complete Copy of the Source Code
One of the first questions we always ask when a company approaches us about fixing their software is whether their previous developer gave them a full and complete copy of the source code.
If you don’t already have it, now is the time to reach out and ask your developer to send you the most recent copy of your source code. Ask if they are sending you the complete source code, or if certain files have been removed.
This is important to ask because some software developers charge for the software but don’t include the full source code as a deliverable.
If you receive push back from them when you ask for the complete source code you’ll want to review the terms of your contract with respect to intellectual property, licensing and so on. Many companies inadvertently sign away their rights to the source code when they hire developers. Contact your lawyer if you think your developers are in non-compliance with the contract.
At Big Fish we give our clients a full and complete copy of their source code, and we recommend that you ask for the same anytime you hire a company or individual to develop custom software. It’s a good way to avoid being held hostage by your developer.
4. Be Prepared for Uncertain Estimates
One of the challenges of undertaking a “fix our software” project, when you weren’t the one who developed the software in the first place, is the impossibility of estimating how long it will take to fix.
Think of this way, the moment you hand over your source code to your new development team and ask how long it will take to fix is like the moment you have your car towed to the service department and ask how long it will take to fix.
The mechanic hasn’t had a chance to look at it yet, they have no idea what is wrong and couldn’t possibly provide any kind of accurate estimate for how long it will take or what it will cost.
Adding to the challenge…once your new developers find and fix a problem there is no telling whether they’ve fixed everything. So providing estimates to fix someone else’s software can be a blind shot in the dark, and a gamble other developers may not want to take.
As I noted above, the fact that your current developers can’t fix the problem is a strong indicator that we might be dealing with a problem that is larger than it seems.
5. Finding a Developer Who Wants to Fix Your Software May be Difficult
Not just any developer will want to take on your “fix our software” project. Fixing someone else’s code is frustrating, and at times soul-sucking work. That can make it all the more thrilling when you successfully fix issue after issue…but it’s not for everyone.
Here at Big Fish we are very choosy about the “fix our software” projects we take on. Taking on poorly-written software developed by someone else is risky. The reality is, as soon as you hire another developer to “fix it” you will now be pointing your finger at them when it doesn’t work. And if, like us, they take pride in writing high quality software, they will be reluctant to put their reputation and name on line by taking over shoddy software written by someone else.
That’s the Reality Check. Here’s How We Can Help
If your company is experiencing excessive bugs or issues with your software, you want to know how bad it is and whether we can fix it.
We created our Code Audit service for companies like you. Rather than just diving into a potentially bottomless pit of bug fixes (and invoices), we start with a Code Audit. Think of it like a report card for your software.
We will review your source code against a list of more than 50 Best Practices and Guidelines that our experienced team of developers created. We then provide you with an assessment detailing what we found.
By starting with a Code Audit you’ll know the overall shape of your software and whether the problems you’re having are likely caused by just a few bugs, or if there are deeper problems that need to be fixed.
The difference between starting with a Code Audit versus just diving in and “fixing bugs” is like the difference between your Doctor giving you pain killers to relieve your chest pain, or your Doctor checking you over first to make sure something more serious isn’t going on.
For example, we have found major security flaws when reviewing source code by other developers. Security issues are generally not apparent just by using an app, you need to review the source to discover them. That is one reason why our third party Code Audit is beneficial, even if you aren’t experiencing major bugs and failures.
How to Get Started
If you’d like more information, or want to inquire about hiring our team, please start the conversation here.