Digital transformation is no longer a buzzword; today, it’s a commodity that defines any business’s future success.
While some businesses can transform digitally with off-the-shelf tech solutions, most still need bespoke software to cut through the noise in their niche/industry or streamline internal processes and improve critical performance indicators.
As such, creating a custom application is the best option for many companies today.
However, most businesses do not have the time, money, and internal bandwidth required to build an in-house team needed to develop tailored software. Hiring a third-party tech consultancy for custom software development is the most viable option for both tech and non-tech companies today.
In this blog post, we’ve put together a list of questions you need to ask your potential custom software development provider to evaluate their readiness to take your project from the ground up and the ability to deliver on time and budget.
1. How long have you been in business?
Ideally, a minimum of five years.
Obviously, a company that has been in business for a while is likely to be more stable than a startup that didn’t even exist yesterday. On the other hand, some legacy businesses can be hardwired to dated technology or have a too-narrow focus (e.g., PHP or Java-only software house).
Also, companies that have been operating for more than 13 years typically prove to be more tenacious and handle tough times better than young companies without firsthand experience of surviving previous economic turmoils.
2. What’s the size of your development organisation?
Ideally, at least 10.
A company with fewer than ten developers is likely to have tighter resource constraints than a larger firm.
Development projects often go beyond their original timeline, and in the case of a small company, this can often mean that new projects cannot start on time. A small firm will also have fewer people to bring in to solve your technical problems. So, it’ll either have to rely on sub-contractors or additional new hires.
In the first case, you may face a hidden agenda, which can result in overheads. In the second case, your time to market can be shifted significantly, which will impede your product evolution, user loyalty, and so on.
Besides this, make sure your prospective bespoke software development partner has an in-house pool of project management resources, including BAs, team/tech leads, Scrum Master, etc.
3. What languages/stacks do you specialise in?
Software development technologies change very quickly, and building a system using the wrong tech stack can significantly complicate support and accelerate your tech debt accumulation. Technologies such as Delphi or Cobol are now almost completely obsolete, so if the software house you’re considering to team up with says they have strong Delphi expertise, think twice before continuing talking to them.
However, the overall picture is more complicated: Ruby-on-Rails is a popular platform that is not technically obsolete but is now used by so few developers that maintenance work becomes a real challenge. The same refers to very new technologies like JetBrains Kotlin Multiplatform that’s gaining steam within the developer community but still lags behind mainstream technologies in terms of developer support and size of the user base.
While these new technologies can be exciting and promising, you better stay away from using them on commercial projects until they are mature enough.
Check out an interview with our MD and Chief Delivery Officer Philippe Peron about why .Net developers typically have a better work culture and deliver better-quality tech products.
3. What is your copyright policy?
Upon delivery, the customer owns the copyright. If we use any internal libraries, we’ll grant a royalty-free, perpetual, transferable license.
We retain the copyright and grant the customer a license to use the system.
In the case of bespoke software development, the developer must transfer all copyrights to the customer at the end of the project (after it’s been fully paid).
However, some rogue providers are trying to persuade customers to sign a contract whereby they only transfer a license to use the software. In this case, the developer retains the legal right to charge additional fees in the future, even though the customer has paid 100% for the development.
4. Do you have the technical experience to complete my project?
When choosing a custom software house, you need to demand experience and seek a company with a good track record to deliver tailored solutions.
Your potential software development partner needs experience in more than just coding: they should also have one in project management and full-cycle development from concept to implementation to support.
Keep these questions in mind when choosing your custom developer:
- What experience do they have in my vertical / market?
- How many years of experience do they have?
- How many developers have experience with the platform/technology that I need for my project?
- How fast can they find and source new candidates for open positions on our project team?
- Are they willing to share the profiles of the people who will actually be working on our project?
- Will they allow us to interview and evaluate developers signing the contract?
It’s important that the custom software developer you hire will act as your real project development partner, communicating with you clearly and listening to your expectations.
According to PWC, 50% of all software projects fail today as a result of:
- Poor estimates/missed deadlines
- Wrong business model chosen
- Scope changes
- Insufficient resources
Be aware of these potential issues when choosing companies and filter out firms that fail to meet your needs and expectations.
5. Can you provide good references from happy clients?
References are paramount. When considering a custom software shop, consider requesting a few client references to contact.
You definitely want to vet your dev shop with more than just a few Google reviews.
Make sure you turn to their real clients for unbiased feedback.
When asking for references (and you should always ask for them), make sure to ask the following:
- Can you provide three former/existing clients who can speak well to your track record?
- Do you have clients who are now your brand advocates?
- Are there any unhappy clients? if yes – why?
Finding client references on B2B directories like Clutch or GoodFirms is good, but make sure to question their quality and objectivity. It’s pretty easy to post fake client reviews to those directories or ask friends and family members to post a fake testimonial from their LinkedIn accounts.
That being said, if you see the company’s profile with many positive client reviews online, make sure to ask them to provide contact information of those “reviewers” at least to verify whether they’re existent at all.
6. Do you prioritise cost over quality?
Quality always comes first! We never compromise on it.
In an effort to cut costs, companies are exploring the concept of outsourcing their development projects to international suppliers and overseas developers. Developer rates in China or India are up to 80% lower than those in the Western world, which attracts startups and SMEs alike looking to cut costs.
Read about the 5 benefits of outsourcing.
While outsourcing may seem more cost-effective, keep in mind that total costs can be over 65% higher than anticipated due to several factors and unknown risks, including:
- Wrong business model (e.g., T&M instead of Extended Team);
- High employee attrition;
- Wrong methodology (e.g., Waterfall instead of Agile);
- Low quality/poor maturity of offshore resources (e.g., junior talent is “sold as” the mid-level one, etc.);
- Poor communication between customer and dev service provider;
- Your inability to manage the project and milestones delivery or manage and control your outsourcing provider (e.g., lack of in-house PM resources/tech expertise, poor corporate culture, etc.)
If you are considering outsourcing your product development, consider asking the following additional questions:
- What are the local laws to protect your intellectual property?
- Are the expected costs and timeframes accurate and realistic?
- Is there a complete understanding of time frames in different time zones?
- How will product handover and ongoing service capability work?
- Does the company have a positive track record as an IT employer in the country where we plan to outsource our development? How easy will it be for them to pitch our project to the local developer community?
In general, there are many risks to consider when outsourcing offshore/nearshore. However, if you are diligent, you can mitigate these risks and complete your project successfully.
7. Will our software be built on top of some other platform or system?
Yes, but it is not proprietary, so you will receive the complete source code.
Your software will be built on top of our awesome XYZ platform.
Developers typically cut costs for individual projects by using a common back-end platform. If done carefully, this is a good idea – on the one hand, the client has full ownership, on the other – there’s no impediment for the transition to a new developer.
Unfortunately, many companies use proprietary platforms that are difficult for a new developer to master and scale. So, unless you deliberately want to have a vendor lock-in, never agree to have anything built on top of proprietary platforms and always choose well-supported mainstream platforms with a good resource base.
8. Will our system use or depend on any third-party libraries or systems?
Yes, but we’ll make sure the licenses are affordable and will include them in our work estimation prior to signing the contract.
There are many powerful libraries available for developers, and they really save a lot of time and effort. However, such libraries may be licensed to the developer and not to the end-user. This can lead to overheads in the future or a maintenance problem. Likewise, the system can be designed to work with external systems such as SQL Server that are costly. As such, your development provider must ensure that you, as the customer, understand all such costs and “sign up” for them.
9. Do you have source code control / continuous integration (CI)?
Yes. Our developers’ code is placed in a central source control system, which is backed up every night.
When a team creates software, the members must share the code with each other. Modern version control / CI systems ensure that all changes are committed so that they can be rolled back. All professional developers should use source control, such as Git or Bitbucket.
10. Can you speak “Business” and “Tech”?
Good communication is the superpower of any reliable software supplier.
A development company should be able to communicate clearly in both business and technical terms if something needs to be changed in your specification and why.
Often, working with developers who don’t speak your language can lead to communication and conceptual gaps.
More questions to consider:
- Can you tell me about my industry and the digital tools my business needs to succeed?
- Will your project managers and developers help guide the development process (i.e., will the developers just code according to the spec or contribute their ideas and perspectives as they go)?
- Are you just a software house or a full-fledged consultancy that can guide us all the way throughout our software development life cycle (SDLC)?
Communication is key to any development project, so it is important that the company you hire can explain how the proposed technologies will benefit your business.
11. Do you have specialists who can help with System Deployment and Firewall Configuration?
Sure, we have an in-house DevOps specialist who can help set up any required firewall or other systems and ensure your extended team’s seamless integration with your corporate systems and environments.
Your IT department should do this. Of course, we can recommend someone who’ll be able to help, but…
Most companies’ IT departments are often very busy with internal tasks, which can lead to unnecessary delays during deployment. The skills required to set up a new system may involve several people in the IT department: for example, one person configures the firewall, the other works with the database, etc.
If your development partner has its own people and resources to do this, it can save you quite a lot of time and money, as your tech partner can be better equipped to do the job properly and may know how to save your budget on this.
12. How do you handle cybersecurity?
Here are sample security questions to ask outsourcing companies before signing a contract and finalising your software development budget.
1) Ask what specific security measures they provide. Make sure you are aware of your company’s security needs.
If you back up data (which you probably do), you need to know where the physical storage is and how long the data will be kept. Make sure all of this is written into the service level agreement (SLA). Since you are likely to share sensitive information with another company, you should also include the nondisclosure clause in your final agreement.
2) Ask about incident response and migration services.
You will need to determine if your prospective software house offers such services. If they do not offer incident response services, ask them if they have partners working in the area or if they can recommend a company offering these services.
If they can’t – it’s your telltale sign that the company doesn’t bother to care about their clients’ cybersecurity, so better stay away from them.
3) What recovery plan do they have in the event of a security breach?
Since your potential tech partner is likely to protect their own company data (and their project data accordingly), you should enquire about their own recovery plans and methods.
Why build your bespoke software with Evolve?
- We’ve been in business since 2007. Since then, we’ve survived several economic downturns, learned invaluable lessons from our numerous custom projects, and have gained solid know-how of successful bespoke software delivery, which allows us to boast a very high customer satisfaction rate.
- We can introduce you to our former and current clients so that you learn straight from the horse’s mouth about what it’s like to work with Evolve.
- While we position ourselves as a technology-agnostic company, we’re really good at Microsoft Tech Stack (.Net, C#, etc.) and mature technologies.
- We have cybersecurity embedded in each client’s SDLC, so we guarantee the highest possible level of each custom solution’s security.
- Depending on your budget and expectations, we have capabilities to build your software both within the UK and remotely in Ukraine where we’re running our R&D Centre.
To learn more about how we make a difference when it comes to bespoke development and request our portfolio, drop us a line or call at +44 116 298 7460!