When you first think about software development outsourcing, you probably have a lot of concerns. Most of them can be best summarized with a single question: How am I supposed to entrust my development to some other company?
The thing is, outsourcing doesn’t necessarily mean worse quality and no control. Of course, if you base your choice of development partner on a quick Google search, the result will reflect the effort you put in. But if you do proper research and know what questions to ask and what things to pay attention to, you can find a partner that’s focused on the quality of your product and success of your business.
This checklist highlights the most challenging moments when people usually stumble with outsourcing development so that you can make an informed choice and get started with outsourcing easily. Following this checklist will help you reduce risks and find a reliable development partner that can deliver a product that meets all your expectations.
Here are three main points we’ll consider:
- Whether you can trust this company
- How the company’s services fit your development needs
- The business processes of the company
Let’s take a closer look at each of these points.
Trustworthiness is the very first thing to check before starting a relationship with a company. Even if a company doesn’t offer a technology you need, they may be able to find the right developers and assemble a dedicated team for you so that you still can work together. But will you be able to work together with a company you don’t trust?
1.1 Don’t trust awards, trust real people
You can buy anything today. This isn’t to say that all awards are fake, but awards and reviews aren’t something you can believe entirely, and they definitely shouldn’t be the only thing you put your trust in.
When you consider working with a company, pay attention to the video, audio, and written testimonials.
Testimonials can prove a company’s professionalism, but unfortunately even video testimonials can be fake. Just Google “buy video testimonials” — these services do exist!
So when choosing a development partner, always ask companies to connect you with real customers. When companies show off the names of their big clients, ask a simple question: Can I talk with someone from this company? It’s the only way to make sure the development company is reliable.
We always offer our potential partners references from existing partners that have been working with us for years. You can talk to a real person and ask any questions you have so you can be sure about your decision.
1.2 How long do they usually work with their partners?
Another thing to pay attention to is success cases. These can show you what business tasks a company has solved for their clients, give you names of real clients, and provide information about workflows and duration of partnerships.
If a company has years-long partnerships and can prove it with references from actual partners, it’s a good sign that you can trust them with your long-term plans. If they don’t include this information in their case studies, be sure to ask for references during the first meeting.
2. Development needs
2.1. Have they worked with companies of a similar size?
Companies that have similar revenue, number of customers, and number of employees usually have similar challenges as well. Ask for a success case of a similar company or a reference from a CEO at a company of a similar size. This person can give you the most valuable feedback and help you understand if the company is capable of satisfying your needs.
2.2. Have they worked with my industry and market?
If you work in the telecommunications industry, it would be nice if the development company you choose knows what billing and provisioning systems are. Each industry needs specific technologies, and since there’s no shortage of outsourcing companies, choose one with experience in your industry to save time.
You should also choose a company that has experience working in your market as only companies with experience can estimate your project with zero breaks in timing and a fixed budget. If a company has worked on projects focused on the same market, you should be able to start quickly and smoothly.
3. Business processes
3.1 Avoid “give us a technical task” companies
There are two types of outsourcing companies:
- Companies that do what they’re told with zero commitment. They’re passive, ask for a lot of explanations, want you to make all the decisions yourself, and never share advice or their own opinion. You can recognize them by the words “give us a technical task.” This is a contractor–client type of collaboration.
- Companies that have their partner’s value stream at the top of their minds. Teams at these companies are engaged and committed to their partner’s business goals. They’re ready to discuss their partner’s ideas and share their own. Let’s say your conversion rate suddenly drops during the sprint. Developers that care about your business won’t say: “sorry, this issue isn’t in the sprint.” Instead, they’ll shift some other task to tackle the problem as soon as possible. This is a partner –partner type of collaboration. The product owner and developers work together as one team, discuss problems, and find solutions together.
The first approach isn’t bad. The fact that it still exists means that some companies are happy with this kind of collaboration. But if you want to work with engaged developers looking for new opportunities for your business and working with you as one team, choose a company that develops with you instead of for you.
At HYS Enterprise, we work with you. At the start of our partnership, we conduct a workshop where our partners tell their ideas and vision for their project. Our developers then offer ways to implement our partner’s ideas, and the whole process is built on a discussion where both parties are engaged in successfully solving the business challenge. This approach helps us deliver reliable software while taking care of our partner’s business goals.
3.2 After-development support, or “set and forget”
Be sure to ask if a development company offers after-development support. Companies that are ready to maintain your product are more responsible, while companies that work with one-time projects can do their part of the work and leave you with a lot of bags and no commitments.
We get dozens of requests to fix bugs left by previous development companies, and sometimes it’s easier to develop from scratch rather than try to make the existing code work correctly.
3.3. Delivery time and costs
Delivery time and costs usually depend on the number of engineers you want to hire. Of course, you can hire one developer and one QA, which will be cheaper but take longer. Or you can hire a full-fledged team with a shorter time-to-market and higher cost.
Choose an experienced development company to get a fast and accurate estimate for your project. Also, ask how often new features will be delivered to you. Companies that work with Agile methodologies usually deliver every two weeks.
Here are some key tips for getting started with outsourcing development:
- Don’t blindly believe reviews and awards. Ask for references from real people.
- Focus on long-term partnerships, as companies that offer after-development support usually think about the final result and are more responsible.
- Companies with experience in your particular market and industry and companies that have had clients of a similar size can understand your business better than others and help you start outsourcing quickly and smoothly.
- Choose a company that offers the partner–partner type of collaboration. Working with this type of company will take most of your stress away as you’ll know that your team is taking care of your business goals and looking for new opportunities for your project.