Okay, this article isn’t groundbreaking, but here we are going to discuss a subject that concerns a lot of our customers and probably you too since you are here. Today’s topic is pros and cons of outsourcing in 2017.
- What issues are we addressing?
- Why outsource?
- How does it work?
- How much does an outsource application development cost?
Take your time to prepare a list of questions before emailing a development agency with an ‘I want to develop an app’ letter. That’s the way to save some time for both you and your development company. Consider issues like:
- What is my budget.
- Is it an MVP or a full application?
- What platforms will it be based on?
- Should it be cross platform or native?
- What final result do I want to see?
- Do I have any criteria for picking a developer?
- Do I have all the features and functions that I want my application to have determined clearly?
You probably already know the main advantages of outsource mobile development. There are less expenses, no long-time obligations and a lot of possibilities. On the other hand, there are still some risks starting with language and reaching the logistical challenges. Let’s take a look at them.
How Much Does Outsource Mobile Development Cost
Depending on a region, mobile development expenses range from $5 000 to $150 000.
Let’s take a look at the following common application types and the average development cost:
- Chat like Whatsapp – $25000 to $50 000
- Dating app like Tinder – $40.000 to $90.000
- City guide – $10.000 to $35.000
- Social media app – $15.000+
- Banking app – $30000 to $50.000
- Taxi app like Uber – $20.000 to $50.000
So what is the price for an outsource? Check the table to see average hourly rates for iOS and Android app development regarding the region. Keep in mind that these are the approximate numbers and you can only get the exact final price number from your developers.
What is the point of a productive outsource? The moment you have the exact product description with all the features and design requirements it’s time to contact the programmers.
At first take a look at their website - check all the sources, work examples and the feedback. It is also worth your attention to do some research and look for the feedback to their work on side resources like Clutch.co or Upwork. Then it is time to arrange a Skype meeting. Check their competence, language level and see if they can get in touch when it’s convenient for you. A good PM would strive to explain everything to you, build a dialogue correctly and put everything in the right and understandable order.
Stages and Control
Application development usually consists of:
- Project studying. Coordinating the tasks, compiling the sprints and determining the terms.
- Writing detailed technical documentation. The whole list of the app’s features, functions and mockups.
- Design. Thorough design work.
- Development. Coding itself.
- Testing. Checking the app, removing the bugs.
- Ongoing support. The market is changing, and so do the user’s needs. Thereafter, you app needs to be constantly upgraded and changed.
The main outsource price risk is its quality. Therefore control and check-ins are vital. You should always check the code and make sure it matches your development goals. Estimate the feature demonstration, check them yourself and order to do more work on them if it is needed. It would be quite fair to request the mockups. You might pay a little more, but you will make sure that everything was understood correctly.
So you are ready to pay someone to develop your app. Now it comes to the next stage, which is identifying the good and the bad guys on the early stages. You can check some of the positive responses and good markers here:
- Full and practical answer to your offer. Something like ‘We have recently developed (are developing at the moment) a product with similar functions. This would help us work more efficiently and get a better result’
- Written and verbal communication. It must be smooth and correspond with your business-culture. Correct grammar usage in their answers is important, but you should not be overdramatic about them. Discuss the application scope via Skype, ask questions and solve tasks. These factors are crucial in outsource development.
- Answers. The candidate who gives answers and is willing to communicate or the one who gives more complex answers than the others is the best choice. If they can answer to you quickly despite the time difference, that’s just great.
- Honesty. Although highly developed skills and competence are very important, they don’t guarantee your employee having following basic code of honor. For example, you must understand if they refuse to give out any information due to the non-disclosure agreement. That’s the right thing to do in such circumstances.
- Start with a small project
- Perform the interview correctly
- Provide thorough description
- Work by stages
- Perform check-ups regularly
- Take care of juridical part
- Perform tests
- Don’t chase the cheapest option
We have made up a list of five most common mistakes made by those who hire developers for the first time:
Mistake #1: Outsource with those who are out of the trends.
Oftentimes when hiring freelancers to develop an app, you might find that they don’t know all the current trends on market. This leads to the fact that they are unable to give your product correct estimation and advise you on developing features that are in demand in certain regions.
Mistake #2: Forgetting about the time difference.
We have mentioned that already. When you’re available online your developers are asleep, so you only get answers to your questions the next day. It only increases the amount of time for development and of course the final sum. Therefore make sure you can communicate comfortably before hiring a developer or a team, make several calls before signing a contract.
Mistake #3: No PM and lack of communication.
Not having someone who would manage all the processes, confirm deadlines and have control over the work doesn’t lead to a great result. Try to use online managing tools if you don’t have a project manager for your business.
Another bad sign is your developer being quiet and not having any clarifying questions throughout the work. However, don’t bother them too much. It’s better to communicate through a PM and only talk to developers themselves if it’s necessary.
Mistake #4: No final testing.
You cannot find and solve the issues if you and your dev team don’t recreate usage scenarios. Does everything look and work exactly the way you wanted it to? Are your developers able to test GPS feature from another country? Make sure that your team has a tester in it, or better even a few of them.
Mistake #5: Budget before quality.
You can get caught on the $7 hourly rate, but what will you get for it? If you plan a serious project, leave out the adventure seaking and pick a reasonable price and quality relation. A good development team might give you some kind of discount for one reason or another, but nothing too crazy.
Now let’s get to what Thunderrise can advise you
Define your intentions
It means understanding clearly how your app will perform and what you will do with it. For example, entertainment app and paid subscription fitness app are different things. Any conversation on how to outsource app development starts with it and it helps hiring third-party developers with required skills.
IT outsource risks evaluation
There are plenty of risks including por quality, delays, lack of communication, unreliability or source code insecurity. Limit database access, part the coding, consider all the juristical aspects and so on.
Conduct an interview and choose a developer
Talk to them to see if you understand each other easily. Ask specific questions like their Android outsource development experience to see if they are confident in their own skills. Go through their portfolio or request to see it. Call unexpectedly on Skype to see how they will respond, but consider time zones.
Know your users
Start on the early stages by sharing an idea with the audience. Collect the feedback and start outsourcing with it in mind.
Agreement and software documentation
You better request it from a person or a team that developed your application. Otherwise, as the time goes by, both you and your employees will have no idea on how to manipulate and support the application.
To sign or not to sign - that is the question.
Deciding it is on you. Of course it’s more safe to sign it even before the whole process begins, as it will protect your intellectual property rights. It also prevents your work and designs being reused by the development team while creating other apps for third parties. You should also check if signing such agreement is obligatory in your developer’s country and whether it is enforced there.
Looking at it from another perspective, if you don’t sign a contract it allows your developer to put up their work publicly which can serve as an advertising for your project.
Anyway, we’d say sign the contract. It’s safer and you will not have to worry about this matter because you will be protected by the law.
Be involved but don’t get annoying. Observing your app’s development doesn’t mean everyday calls and reports. Don’t distract your outsource developers with useless chatter if you have established goals to be achieved. The main rule is do not interrupt the process.
Making sure your program works is not enough. You have to make sure it works correctly. The more usage scenarios and testing types you go through, the better result you will get. Run through every possible user action. Your developer must have already done that and even more before you check it yourself.
Pull the lever till the end
Keeping a part of the payment until approving the final product is also a positive practise. It gives you power to make the developer fix any problems appearing after the application release. The project price can rise drastically if something doesn’t go as it was planned.
Well, that’s all we’ve got for you for now. We hope this article was useful. You can read related information on our website in the Outsourcing section, and of course, if you want to develop an app - you know who to call.