IT outsourcing experiments fail in 20 to 25% of cases during the first two years of cooperation with a tech agency. The IT outsourcing market is huge and is predicted to grow by 409 billion dollars in 2022. With a growing demand for IT outsourcing along with high-performing tech agencies, many development companies offering poor quality work have appeared as well.
You might have given them a try, failed and decided to try again, with the belief that next time they will choose a better web development partner. You don’t want to fail again, right? So how can you choose a tech partner to develop your product wisely?
In this article, you will learn about the most important aspects to consider when shortlisting tech vendors.
In addition to our own experience, we have asked Janna from ProdPad and Mirko from Intermate to share their experience and tips on choosing the right web development company.
A small disclaimer: we don’t represent any particular software development agency – in this article we are sharing our experiences of working with many software agencies in the past and observing mistakes they have made with their clients.
Let’s start with defining where outsourcing pitfalls appear the most frequently.
1) Communication with a remote team of developers
This aspect is frequently not paid much attention to in the process of selecting a web development agency. You will probably focus on choosing a tech stack to use with your team, assessing developers’ tech skills, calculating budgets, agreeing on a cooperation framework and project deadlines. You don’t know what the communication with your team will look like before you start working with them.
However, communication quickly becomes an issue later when your customers complain about a new bug in your product. You will probably try to contact your team, but they won’t respond – as it is probably night time in their time zone. The bug, if not fixed on time, will cause some of your clients to churn.
These are the moments you understand the importance of having direct access to developers.
How can you be sure your tech agency will communicate well before you start working with them?
They should come up with some form of communication plan. A good sign is when they start talking about communication without you bringing it up first.
If they suggest a toolstack (using Slack or instant communicators like Telegram) to keep it uninterrupted, talk about the regularity of your meetings and updates on progress, this means they understand the importance of keeping communication clear.
Don’t work with a vendor that doesn’t give you direct access to developers – middlemen in communication prolong the process of reporting issues and solving them.
Consider using these tools with your team to make communication frictionless:
- Google docs
Jana from ProdPad is sharing her experience on choosing a tech agency and establishing transparent and regular communication with a remote tech team:
As ProdPad is a 100% bootstrapped business, in the early days, we were very restricted on how much we could spend. It didn’t make financial sense to hire developers in-house, as we didn’t have enough for a full-time role, and weren’t ready to make the commitment that it usually takes to hire an in-house employee.
We chose to outsource tech. It helped immensely that we were able to fly to Slovenia to meet the team and discuss the terms of working together. At first, we opted for just a little bit of extra help. Myself and my cofounder were still involved with doing most of the coding in our app, but there were certain areas where our expertise was thin on the ground, so it made sense to get someone to help, even if it was just for a few hours a week.
Over time, as we expanded revenues from our customers, we increased the work that we outsourced, and eventually got to the point of being able to work with a couple of developers full-time. One of those developers, Aleš, is still with us, and while technically employed by the tech agency, he’s as much of a team member as everyone who’s joined since – he joins for company offsite, holiday dinners and summer parties, and we take turns bringing him to the UK or sending our development team to Slovenia to work alongside him whenever we can.
For us, having transparent and regular communication with our offshore development partner made all the difference in the world. It helped us get off the ground (we’re now a team of 27 people, counting in-house and long-term contractors like Aleš), gave us the flexibility we needed in the early days, and gives us a richer team even today.
Janna Bastow, CEO & Co-Founder of ProdPad
2) Time zone differences & remote work practices
Choosing nearshoring, which means working with a software development agency located just a few flight hours from your city is much easier in comparison to offshoring when your company is located in Texas and your tech team in Poland.
You have to be aware of the impact on work which time differences bring and equip yourself with remote work tools which help make work seamless.
First of all, choose a team with whom you would have at least several hours of overlap – e.g. 9-11 am in Austin and 4-6 pm in Warsaw. During these overlap hours you can conduct daily meetings (standups) to discuss work to be done during the next 24hrs, problems, blockers, progress, send feedback e.t.c. on a regular basis.
You can also consider sharing Google calendars with your team to be able to check on each other’s availability. Apart from that remember about asynchronous work, a form of communication that doesn’t happen in real time, but intermittently. Consider tools such as Twist.
3) Transparency and trust
Transparency is key to establishing trust with your remote team. Like communication, transparency is hard to measure before you start working with your developers.
So how can one be sure a tech agency will be transparent during the cooperation? Take a look at how they work! Are they using time tracking tools such as Harvest or Clockify and supply their clients with regular reports? Are they using Jira to track tasks, and do they allow you direct access to anytime you want to check on the progress?
The team of developers you choose to work with should be measuring their work productivity by recording performed tasks together with the time spent on each of them. You should be given access to the tool where this is recorded and check on progress any time.
One of our core values at LTVplus is Transparency. As a 100% remote company, we have to make sure anything and everything we’re doing is communicated across the different departments. This prevents miscommunication and faster growth as a result. Time tracking tools like Time Doctor help us identify what the biggest time wasters are for our staff, allowing us to optimize their day-to-day for better productivity and happiness.
GQ Fu, Co-Founder of LTVplus
4) Due diligence on track record
You can avoid many outsourcing pitfalls by taking a bit more time to verify your vendor – doing your own due diligence. With services like Clutch.co you are now able to read verified reviews submitted by the agency’s past clients. These reviews are collected during a call with Clutch analysts who verify if the feedback submitted is authentic. They are using a defined procedure to achieve it.
Client reviews are a good source of information on how a tech vendor handles project management, communication and code quality. Go through the reviews carefully and look for details on the aspects you want to check. Does the team usually deliver on time? Can they start fast? How flexible are they in terms of scaling the team or substituting developers? Do they stick to the budgets or are their estimations rarely accurate?
In addition, you can also ask your agency to provide you with client referrals and then reach out to these clients to confirm them.
5) Previous experience in your industry
Case studies can tell you a lot about the type of clients the tech agency has worked with before, calibre of projects they have managed and tech stacks they are proficient at. All of this will help you understand if your team will be a good fit to work with. Often companies publish case studies on their websites – go and check them out. Filter them by industry, project size and technology used.
I recommend you choosing the agency that has previously worked with a project similar to yours – in terms of the tech stack, complexity, industry etc. This means they already have some knowledge on the market and the specifics of your product and it will be easier for them to understand your product and cater to the market.
6) A business focus over technocracy
Excellent code quality no longer defines an excellent software development agency. It has become a must. Apart from checking the tech skills of your chosen team also check how good they understand your business and customers. You should be looking beyond the code because even the highest quality code can not guarantee the success of your product on the market. The key to successful product development is understanding the market needs of your end users.
Consider a strong product focus as a big “plus” for the agency especially if you are a first-time founder with almost no previous experience in developing products.
Software development agencies working in the Scrum methodology will sometimes support you with a product owner proxy – a person within the development team acting as an intermediary between the person making decisions (you) and the team of developers – the people developing the product.
A PO proxy will perform the activities a product owner would normally do – gathering customer feedback, defining and managing the product backlog, doing planning with the team, deciding on product increment releases. However, it must be you – the product owner, who defines the product vision and an overall strategy, have the last say on the backlog, make final decisions and control the budget.
To sum up, before engaging an outsourcing web development agency check if they try to understand your product first before jumping to discussing budgets and timeframes. Assess how helpful they can be when it comes to suggestions, feedback or even full support in the product design cycle.
Ammar Akhtar from Finalrentals.com claims that communication and leadership are two main challenges of working with remote teams of developers.
I think when it comes to outsourcing I see two biggest challenges. If you can overcome them you are in good space. One is the communication gap between you and your resources, it can include the time zone, the cultural gap curve and the tech being used to communicate. I suggest always that before starting to work it is always good to have a casual video call with the outsourced teams to understand their behaviors beyond the work part. Second thing that is very important is as a leader how do you convey your vision remotely, how do you make sure that your passion and your vision is understood in the same way as it is in your own office room to the resources working remotely. I think if we can overcome the communication and the vision gap we can surely do amazing work with outsourced resources.
Ammar Akhtar, Founder of Finalrentals.com
7) Cultural differences
Coming from Western Europe, Asia or the United States and starting work with a team of developers from Eastern Europe, you will certainly notice cultural differences. For example, developers from Eastern Europe usually say things as they see them, often choosing a blunt response over diplomacy.
They don’t like admitting failure, trying to crunch on a problem without mentioning it which may later result in delays. They can also be shy at first.
Even if cultural differences exist, don’t exaggerate their complexity. You can certainly mitigate these issues! First, when your developers claim that they are right about something, don’t get mad and take it personally – discuss the issue with them. To avoid hiding problems under the carpet, communicate that problems are not to be ashamed of and encourage them to report them ASAP. To establish trust with your developers try to loosen up relationships and remember that it can take some time, so don’t give up.
The best trick is to regularly visit your team in person, do activities together and get to know each other outside of work, but also share in-depth business insights. This will help you read each other in between the lines, and make sense of any cultural differences.
There is much more to say regarding the challenges of outsourcing and their solutions – to research the topic in depth, download this Complete Outsourcing Guide here>>
I hope that the aspects discussed in this article together with the comments from experts help you define the selection criteria for your outsourcing partner better.
To get recommendations of the best web development companies in Europe, drop me a line to firstname.lastname@example.org.