Before you invest substantial time and money into a purchase decsion, you've likely spent some time doing research. Just a little bit of due diligence will help you determine the best choice among many factors.
Businesses tend to put heavy empasis on the bottom line - the cost. In most cases it is the ultimate deciding factor. But when should you buck up and pay more? Does paying more always equate to better quality? When does a higher cost outweigh the time, aggrevation and expertise that you would get by paying more? This blog post will uncover some of pros and cons of going offshore for your mobile app development project.
There are many dangers when hiring an offshore (read: India, Ukraine, China) iOS app development company.
At Blue Whale Apps, we've worked with several individuals and companies who have pursued development companies offshore. Consistently we hear the same thing - “it was a nightmare” and “I have an unfinished project that’s a mess, please help" or "I can't get my source code".
Below are the most common disadvantages that we’ve heard from clients:
- Lack of expertise. Most offshore companies employ junior level developers with little experience developing high quality and complex applications. Just because you made an app that takes a picture and uploads it to Facebook does not mean you can work with APIs, debug crashes and put together an app with a custom interface. Wonder why the hourly rate is so low offshore? That's because you're paying for a developer to learn on the job.
- Poor design skills. Many offshore companies have one person responsible for all aspects of the project, including developers working on the design. Development and design are two completely different skill sets. Ask if you'll be working with an experienced UI designer. If you're not, then your not paying for one and your price will be lower, but you'll be getting a programmer to design your app. That's never a good idea.
- Language barriers. Communication is key with any business relationship, especially when you are developing software. If the developer "guesses" as what you want when you've told them multiple times and still doesnt get it, that's when frustration sets in. We've seen this happen time and time again.
- Time zone. Trying to set up meetings to discuss the progress or changes may be problematic if the development company is half way across the globe with an 8 hour time delay. This means by the time you give feedback in the early morning and get a response late at night, the cycle of feedback has taken 24 hours. This ends up extending the project out for months, when solutions can be figured out in hours during the same day.
- Thinking Critically and Offering Solutions. This is a huge disadvantage for the client. This may just be a culture difference (do what I tell you to do and dont ask questions type of thing), but when you offshore a project, the company will end up delivering exactly what you tell them. Sounds good, right? This assumes that YOU are the expert, and you have years of app development experience. Most cases, this is not true and you are relying on the company you hired to be the expert - you want your partner to tell you if there is a better way, a quicker way, a different way - not just implement what you told them to, and then realize it doesnt work, there are issues with performance, the way it looks etc.
Since most of these disadvantages are unforeseeable until the person experiences them, they usually only see one advantage - lower cost. Finding a company that says they can complete the project for one-third of the cost sounds like it’s too good to be true, and that’s because it is.
Tips for hiring an app development company:
- Native code base. Make sure that if you’re developing an iOS app, the company is using programming in Objective-C, and if you’re developing an Android app, they are using Java. If they’re using HTML 5 or a cross-platform tool, you may run into problems down the road with performance.
- Ask for samples. Development companies should have a portfolio of their work. We recommend downloading the apps to evaluate the quality of design, as well as how good the app functions. Ask what is the most complex app they have developed, how long it took and why.
- Request references. After you’ve had a few conversations with the development company and have received a proposal, you should ask to contact a few references and follow up with them.
- Source Code. Make sure you get weekly or bi-weekly dumps of your source code. GitHub.com is a code repository that allows the client to have access to the code and see its progress. Just in case your development company goes dark or you decide to abandon the project, you won’t have to worry about getting the code from them and losing all the work.
NOTE: We are not saying that ALL offshore app development companies fit these descriptions, and there may very well be exceptions to the rule. If you've had a good or bad experience with an offshore devleopment company, leave a comment.
Image courtesy of Stuart Miles at FreeDigitalPhotos.net