So, you’re considering outsourcing as the best option for the development of your app? Or maybe you’ve already decided this is the road you’ll be taking. Either way, here's a list of things you need to consider first.
Outsourcing has been big for the past decade or so, and it is praised by many business owners as the easiest and simplest way to get stuff done without hiring extra people for the team. You can literally hire anyone - entire HR departments, developers, virtual assistants, marketing experts, designers… It’s a simple process with all the mediating platforms that are available nowadays and the fact you can reach out to people from all over the world through a handy network of connections called the internet.
You are no longer limited to the local talent pool since distance means nothing - you can find and hire the person with the exact expertise you need, no matter where they are. It’s a great deal on the service providers’ side since they can literally sell their time and knowledge while working on a set of interesting projects at the same time.
But that's all old news, right?
Yes, outsourcing can be an awesome thing, but it’s not all rainbows and butterflies. There is always the other side of the story. The dark side.
In the shadows, you will find a bunch of lost investments, unhappy clients, and failed projects.
If you don’t want to waste both your time and money, here are some important things to consider before hiring an outsourced team to develop your app.
1. Do you know what you want?
This question seems like common sense for any business endeavor. Make sure you know exactly what you want before you start building it and having other people help you build it is quite a basic principle. But, the hectic startup culture has almost made it an imperative to move forward, as fast as possible, even if you’re not quite clear on what you’re doing.
We’re rushing to create and launch our app or any other piece of software and beat our competitors to the market. Speed became the synonym for the right thing to do. If we’re not fast enough, we’re going to miss on something very important.
Make sure to leave yourself enough time to know what you need and what you want, to have specific requirements as for what the final product should look like and how it should work. Sure, there are going to be modifications along the way, but you need to have a clear vision and requirements that will enable you to find the best partner.
Outsourcing a development team means you need to give enough input in order to get the output you’ll be satisfied with.
Most outsourcing companies or independent teams are going to “interview” you when you first get in touch with them. They will do this in order to make sure they are capable of performing the exact thing you have in mind. Of course, there will be companies that will promise you they can do everything you imagine, without even asking for details.
Those are the people who just want your money and the result of your cooperation can be satisfactory only in the rare case that the planets are aligned just right for your zodiac sign.
So, one of the first things you need to look out for is how many questions you get from your potential outsourced team. After all, you are looking for quality, not for someone who’s just going to rip you off, leave you with a Frankenstein's monster app and disappear.
The clearer your vision, the easier it is to find the right fit.
2. Clear expectations
This is connected to the previous point.
Who are you looking for? If you have a very specific vision and know exactly what your app needs to look like, you’ll be looking for someone with “just” technical skills to perform the task they are given. If you’re a tech person or have one on the team it’s very likely you’ll be having this scenario. So, you’re looking for people who are technically perfect and highly skilled at what they do.
If, on the other hand, you don’t have a tech person on the team and you’re not quite sure about the best way to make your app happen from the technical aspect, you’ll be looking for a team that is also business-savvy and can help you make some more complex tactical decisions, as well as assist you in future-proofing your app. With the technology constantly changing, you need to keep up or you are out of the game.
Ideally, you’ll be looking for a mix of these two - technical competence and awareness of the nuances of the hectic market.
You need to be very clear about what you need from the outsourced team.
Should there be a designer on the team or do you already have one in your crew? Which technologies are you going for? Are they expected to create code that you’ll keep on maintaining from some point? How often do you need them to report to you and how many details do you want to know?
Ask yourself as many questions as possible as to what you’re expecting from this cooperation.
Either way, you’re looking for a partner here. The more you know about what the team is supposed to look like, the easier you’ll find the perfect fit.
Clearly articulating most of the expectations during the first meeting about possible cooperation will definitely save you much time since you won’t be wasting it with people who don’t fit your criteria.
3. Put it on paper
This is also common sense but tends to slip our minds every now and then. Especially if you encounter a particularly charismatic character who ensures you your project is safe with their team. A contract is definitely necessary, no matter how small your project might seem.
Also, make sure to be aware of exactly what’s on that paper you’re signing.
What are you agreeing to? Is the development team going to charge you extra for any changes or features that are not previously agreed upon? Are the deadlines strict and what happens if either side breaches them?
The contract needs to be adjusted to your specific business goals, so don’t just agree to the one-size-fits-all generic forms you might be offered. It’s always a good idea to have a lawyer go through any documents before you sign them. If this is not your regular business procedure, it should definitely become one.
NDAs are very popular nowadays since many entrepreneurs want to protect their ideas before they hit the competitive market. It’s up to you whether you consider this necessary or not.
When looking for a partner, you need someone who is capable not just to keep up with you, but to go ahead of your ideas in their specific area of expertise. You can’t be the best at knowing and doing every single thing - even if you had knowledge and expertise in each and every area necessary for a successful business, it would be simply impossible to achieve everything in a given period of time.
So, you are looking for a team (or an individual) who is ready to respect deadlines, knows how to be self-starting and knows when they need to address a specific problem. Proper prioritizing skills are also a must.
This is especially important since the outsourced team will, in most cases, not be in your close proximity. They will most likely be in a different country or on a completely different continent. So, you can’t sit next to them and “make” them respect your requirements.
One of the easiest ways to find someone who will surely deliver on what you want for your app are recommendations. If you don’t have any friends or business associates who can introduce you to experts in a specific area, there are other recommendations you can use. On platforms (such as Upwork) you can see reviews from previous clients. Give them close attention, they will tell you a lot. The lack of comments is also a sign.
If you’re considering working with someone, and there are no reviews publicly available, ask them to provide work samples and tell you about their previous projects. Make sure not to believe testimonials on the website if you cannot check them yourself. It’s easy to fabricate fake reviews on your own site.
Of course, this doesn’t mean someone with less experience will not do a good job on your project, but it does help to find out more about their expertise and whether they will fit your needs.
5. Understand the tech speak
If you have a technical background, this shouldn’t be a problem. Still, if you want to come to a complete understanding with your app development team, you need to have clear communication. That means you need to understand at least the basics of limitations and possibilities of the chosen technology. You need to know the basic lingo in order not to feel uncomfortable on meetings.
As much as you believe your outsourced team or individual, if you’re not sure about what they mean by a specific term, make sure to ask them for clarification. That doesn’t mean you will present yourself as an ignorant person. Quite the contrary. Ask for clarifications and listen carefully. This is also a very important thing to look for in a tech partner - are they willing and capable to explain complex concepts and issues in a simple and approachable manner?
You don’t need to have extensive knowledge of technology to be able to understand what’s going on during the meeting with the development team and how's the overall process doing.
6. Team organization
This is one of the things you need to probe in the very beginning.
If you’re hiring an outsourced team, what does their dynamic look like? Are they working well together? Is there a team leader or will you be talking to the developers and designers directly? Are there frequent changes when it comes to people on the team?
In order for your app development project to succeed, the team you’re working with needs to be stable, well organized and skillful when it comes to communication both inside the team and towards you.
If the group of people you intend to cooperate with is not coordinated well enough, if they have a history of people leaving the team quickly and new employees being brought in to replace them in the nick of time - you will want to walk away from such outsourcing arrangement, your app will not be safe in their hands.
7. Realistic time frame
“No biggie, your app will be done in a few weeks or so” is a great thing to hear, but not quite realistic.
App development process (no matter how simple the project might seem) is a process and as such demands enough time for planning, space for trial and error, and time for implementation.
A high-quality outcome is not possible if you don’t let the process happen, track it carefully and make adjustments when needed.
What’s a realistic time frame for development of an app? We'll be writing about that very soon.
This goes into the very core of your business.
If you want your project to be truly successful, you’ll be looking for partners who share your values in business. Those are the people who will understand you fully and who will be able to carry out exactly what you need.
In case you don’t already have a list of your business’ core values, you can easily make it by replying to the question: “Why?”
Why am I doing what I’m doing? Why is this important to me? Why is it important to me to do things in a specific manner? Of course, the best reference for this is probably Simon Sinek who has developed an entire business philosophy around it.
9. Cultural differences
Thanks to the internet, our world has become quite globalized at a very fast rate. There are no real boundaries, travel is easier than ever and it’s quite simple to get in touch with anyone, no matter where they are. But, that didn’t erase important cultural differences that exist.
The way of life and cultural heritage have a huge influence on today’s business customs. Cooperating with a Scandinavian is nothing like working with an Australian. Yes, the core competencies and principles need to be the same in any business, but our location influences us more than we are ready to admit.
This means the company or individual you hire from the other side of the globe will most likely have completely different work habits and slightly different understanding of business ethics and customs to your own. That is a great opportunity to learn about other cultures, but it can also bring a lot of trouble if you come unprepared.
Make sure you’ve done your research before you engage in a cooperation with someone whose history you know nothing about. Keep in mind that personal experiences of your friends may or may not be true since they’re quite subjective.
10. Cheaper isn’t always better
One of the main benefits of outsourcing is that you pay for what you get, and that is often less than it would take to hire a team of app developers and designers to carry out your project. But, it’s important to remember that cheaper doesn’t always mean better.
With all the competition in today’s market, the companies and individuals who couldn’t find a better competitive advantage chose to decrease their prices in order to attract clients. Make sure you’re really getting the value for your money, and that means you should be making the decision based on the quality of service you’ll be getting, not on whether it’s 100$ cheaper than the next one.