Heavily invested in a project that can't be finished by your current developer – or are you parting ways with your current developer? Blueberry has years of experience of taking on other developers’ code!
We are often approached by businesses who want to hire a new software company to take over the development or support of their existing software.
The reasons can include not being happy with their current application developer, the software system having outgrown their developer’s capabilities, or an in-house team becoming too busy to continue their previous level of support. In fact, there can be many reasons why a client would want to break off their relationship with their developer.
Many Moving Parts
Software development projects have many moving parts and managing those parts efficiently can be critical to the successful release or ongoing maintenance of a software product.
Projects built without using industry best practices for quality and scalability may experience problems with bugs in the software, or performance issues that impact usability. This can happen if the original quote was pitched low to get your business, but the project required more time than allowed, or simply exceeded the technical skills of the developer.
There is also the possibility that a quality developer with a high client load shifts priorities due to the workload from other multiple projects, which in turn impacts on response time for communication, software enhancements and bug fixes. For these and other reasons, the relationship between client and developer can sour over time.
If you’re disenchanted with your current supplier, it’s perhaps time to look for a new software development company – and we’ve plenty of experience in code takeover!
Blueberry can help get your project over the finish line and provide on-going support for the software. This means as technologies change or fall out of favour, we can keep your system running on the latest technology standards to protect your investment into the future.
To ensure a smooth handover, we’ll get to know your business and ensure we have the resources in place to see the project through to completion.
So What’s the Next Step?
The first step is to ensure you have access to the source code (not just the compiled code). You’ll usually find a repository, such as Github, holds the source code (plus you may also hold an archive of the code – in which case make sure you have the most recent source code). You will also need to make sure that you legally own the code.
At all times, remain professional and maintain good communication with your old developer (if possible!) as a hostile code takeover can make the whole process much harder. Remember, you’ll need their documentation, since it will provide background and explanation so that we can become productive more quickly, without having to learn the code structure, its development, staging etc. from scratch.
At Blueberry, we perform a project review to ascertain the quality of the code we’ll be working with, and if it’s fit-for-purpose. This includes:
- Assessment of any security vulnerabilities, particularly if the system is available on the web.
- Review and map the software architecture to ensure it meets the ongoing requirements of the business.
- Review of database design to identify if improvements need to be made to meet performance requirements and future development/business plans.
- Code review to determine quality (is it well structured, well documented, modular, uses a current technology stack?). If not, we may need to rewrite some of the code before we begin to develop new features.
- Source code structuring review to determine how much code (if any) will need rewriting.
- Ensuring we have the experience of the languages and frameworks used, so we can take over the code.
- Checks on any non-standard libraries and other software dependencies being used, to ensure licenses and support can still be obtained. Swapping out dependencies may have cost implications.
- Is the code testable? If the code comes with unit tests, then code changes can be automatically identified.
- Will the system need to be migrated? If the hosted environment is to be migrated as part of the takeover, then we’ll need to formulate a plan to migrate data, environment configurations and so on from the current provider, perhaps to a new cloud environment.
Get in touch with Blueberry today if you’re considering handing over your existing software system to another software company. Some of our longest serving clients started as a system takeover project!