How to Select Your Software Development Agency
The selection of a supplier is very similar to employee recruitment. You publish an ad, wait for replies, invite a few applicants for an interview, and make your final decision based on recommendations, psychological tests and the impression you got from the interview.
Yet all too often, software suppliers are selected based only on their written replies, tenders, and résumés. For some strange reason, buyers want to keep the relationship distant up until their final selection. Yet you are hiring experts to work for you. Résumés alone don’t tell you much about the supplier’s level of expertise or attitude. As a client, it’s worth your while to get a feel of the supplier organization, up close and personal.
In traditional corporate culture, raises are handed out to everyone equally. If you deviate from this norm, there’ll be the devil to pay.
When increased productivity earns rewards only for those above middle management, it’s not surprising that people often still think of hours as units of measure relating to, and charging criteria for expert services.
It’s seemingly simple to compare prospective suppliers by their hourly rates. But a much smarter approach would be to look at the results they are able to achieve in an hour.
Look beyond the price tag and get better results by following these Software Development Buying guidelines:
- Visit 2-3 software development suppliers and personally interview the team they’re planning to allocate for your project. Ask them to give examples of previous products or services they’ve developed.
- Ask them about similar projects they have experience on: what was achieved and how long did it take? Compare the time spent to the results achieved.
- Ensure that the supplier rewards all their employees for achieving desired results.
- Ensure that the supplier has adopted widely used best practices for software development, including centralized version control, continuous integration, and automated testing.
Software development has traditionally used two different pricing principles:
- hourly rates
- fixed prices
The problem with fixed pricing is that it is inflexible in the face of change. With a fixed price, you get what you thought you needed, not what you actually need. The simplest and best-suited model is hourly-based pricing.
But when it comes to software development, this model has a poor reputation that often limits its use. Clients assume hourly rates to mean that the bar is open and are afraid of risking a massive hangover. Fortunately, this possible lack of confidence at the beginning of projects is easy to dispel.
Once the collaboration proves to be smooth and trust between the parties starts to build, it’s often possible to switch to the more flexible hourly rates. Bypass the ‘problems’ of hourly charging at the beginning of projects with these nifty tricks:
- Satisfaction Guarantee. If your supplier doesn’t achieve agreed-upon results, they don’t get paid.
- Minimum viable product. Make an initial agreement which only contains the implementation of an MVP. Its functionality may be limited enough to allow fixed pricing.
- Carrot and stick. Get the best of both worlds by using one of the many pricing models developed to combine the benefits of hourly rates and fixed prices. One example is to pay a predetermined bonus when the project is finished under budget and lower hourly rates for any work exceeding the budget.
- Trial sprints. Collaborate with two or more suppliers on a trial basis. The Finnish Innovation Fund Sitra chose the supplier for its website project by ordering trial sprints from two different companies and based their final decision on the results. This method is commonly used in architecture competitions, so why wouldn’t it work in software design? The problem with fixed pricing is that it is inflexible in the face of change.
When purchasing a custom software project, be sure to secure the ownership of all material related to the project (software source code, documentation, graphics, etc.). The terms and conditions of your agreement should also state that all intellectual property rights (IPR) will be transferred to the client. Otherwise, only your original supplier is able to make future changes to the software.
This kind of vendor lock-in can make software maintenance extremely expensive. Ownership of the IPR and the source code gives you the possibility to integrate third-party components to the system and to freely develop your software further. Remember to also agree upon the use of open source code. It is a good practice to require a list of all open source components. Your supplier should also be able to guarantee that none of the component licenses compromise your business operations or limit the distribution of your software.
There are many factors to choosing your custom software development supplier. As an active member of the dev community for years, I like to try and provide as much perspective from the software development side to help navigate the journey for those businesses that are uncertain. Hopefully these tips helped!
For more information on working with a Software Development company, I recommend reading the Vincit Software Development Buyer’s Guide!