There are many reasons you may be considering finding a new software development team. Lack of progress, buggy software, poor communication and missed timelines are all common factors in losing trust during the development process. Switching development teams can seem like a daunting task. Often companies wait longer than they should before exploring other options or asking for help.
It’s clear that software issues can have a negative financial impact and create a bad experience for your users - so why the hesitation to switch? The reason we hear most often is simply because our clients didn’t know where to start. The process doesn’t have to be painful, and we’ve documented some steps that companies can take to successfully find a new partner.
Find a Trusted Agency
You may have thought that your current developer or team was more than capable, but now you have lost trust in the process and need to find other options. It’s important to find an agency partner that has a proven track record of success and is trusted by brands you know. If an agency is promoting that they work with Fortune 500 brands, but do not have any examples of this work on their site, proceed with caution. You should be able to ask for client references and speak with those who can provide credibility to the agency’s work.
It’s also important that the agency you choose is a true expert in the complex process of software design and development -- and isn’t just a jack of all trades. There are several creative agencies that aim to be your one stop shop from apps to Tweets, but this does not always result in good software. It’s often better to find a team who is an expert and highly specialized in a primary service as opposed to being focused in several.
Software is not the same as other creative services and the agency must understand the nuances of object oriented programming along with best practices in the industry. Because of this, Teeps partners with dozens of agencies to take on their complex software projects. Following our own advice, we then refer our clients back to these trusted partners for things like digital marketing and other services that we simply aren't the experts on. We stay focused on building the highest quality software we can.
Here are other important qualities that we recommend in an agency partner:
- Focuses on transparency and constant communication
- Provides a dedicated team for your project
- Practices Test Driven Development and Conducts Code Reviews regularly
- Follows Agile and demonstrates progress every 1-2 weeks
Understand Your Contract
A contract for software development services should be a benefit to both parties by clearly outlining important items like payment terms, ownership of the source code and setting proper expectations. When switching teams, you should reference your software contract to fully understand your options and the commitments that were agreed to. If you’re in active development, you may want to look for language in the contract around early termination, termination for convenience and if there is advance written notice that is required to move on.
For both active and completed projects, it’s important to know who owns the source code. Sometimes agencies will license the software and libraries that they have created, but retain the intellectual property with certain limitations. If you’re paying expensive agency rates for a custom project, you should be owning all of the source code with the exception of open source third-party libraries which grant you a perpetual and royalty free license for use in your product.
Get Access to the Code
Next, you’ll want to obtain access to the most recent version of your source code. Your current developer should be using some type of version control like GitHub, BitBucket or other platform. You can easily create an account on one of these platforms and request that your developer makes you an Admin which will give you the ability to view and download your code. Sometimes developers are hesitant to follow this process and you may simply need to request a .Zip file with a copy of the latest code. It’s also important to ask for any documentation and other important files related to the projects.
If your developer is following best practices, your code should be well documented. If this documentation exists, you should request access to it from your developer. If it doesn’t, you should request that your developer does document as much of the code as they can along with providing a README file that includes build steps and references to any dependencies. While documentation is important this not an immediate requirement for switching teams.
Start with a Code Review
Now that you’ve read your contract, have access to the code and found a trusted team -- the first step we recommend is having your new potential team conduct a Code Review. This process gives you a third-party assessment of the current code, a chance to see how your new prospective team works in a small capacity and will bring clarity to the project’s next steps.
A proper Code Review is more than just a developer looking at the project, it should be a comprehensive audit of the following areas:
- Performance
- Security
- User Experience
- Compliance
Along with the Code Review, you should receive the expert recommendations for ways to improve the project and estimates to do so. At this point, you will have everything you need to make the switch.
At Teeps, we understand that switching development teams can seem like a difficult challenge. Whether it’s because you’re unhappy, you’ve outgrown your current team or you simply want a fresh approach on a development project, we’ve helped dozens of clients successfully switch to Teeps as their development partner.
Are you looking for a new development team? Our streamlined Code Review service makes it easy to take the first step in understanding what to do next for your project.
Contact us to today to speak with our Co-founder Joshua about how our team can help.