March 13, 2012
There’s no lack of blog posts about offshore development strategy, so let me make this one quick and specific. I’m talking to those of you looking for a smartphone/tablet app, probably your first one. You don’t have a big budget because you’re really not sure if it will be worth it for you, and you’re not in a situation where $15000 (or $5000) adds up to rounding error. You come to me first, and I tell you I’m trying to make $90/hour or more. You’ve take a quick look at a freelancer site, and sure enough, there are a whole bunch of people willing to work for $20. Why pay 4.5 times the rate for a more experienced, U.S.-based developer? Honestly, there are times that going with the cheap guys is best. But in your situation, it’s probably not. For one, the best programmers work about 3 to 4 times faster than average ones.* Here are some questions you can answer to figure out if you should consider low-rate offshore developers. A lot of them come down to whether or not you need help decide what you really want, and whether you are capable of evaluating development work before disaster sets in.
- Do you know exactly what you want to build, and are you confident that your customers will like it? Do you know how you’ll make back your investment? An experienced app developer should have understanding of not just coding, but also user expectations and possible revenue models. The cheap guys probably aren’t going to be able to steer you in a useful direction (though they’ll promise you they can). Furthermore, a local developer should be able to meet you face-to-face, which is invaluable for talking through ideas.
- Are you an expert consumer of the platform your project will use? Android and iPhone apps have a lot of differences in their standard user interfaces. For instance, iPhone tabs go on the bottom of the screen, but Android tabs go on the top – and you should probably be using the “Action Bar” instead. If you go wrong here, users will take longer to get used to the app, and a lot of them will get frustrated and never settle in. The cheap guys may be able to point to an app where they did it right, but how sure are you that the same person will be working on your project
- Do you have have intellectual property or information security concerns? Anyone you trust with building your app could steal your code, your data, or any other IP you provide them. However, if someone does you wrong in the U.S., they know you might possibly be able to take legal action and make them pay for it. You might also have an opportunity to warm others in your niche about the shady developer, costing her business. If you answered yes here, the followup question is: are you prepared to sue someone in a foreign legal system?
- Are you confident that you can test all the use cases of your app? One of the big differences between a mediocre programmer and a good one is the ability to handle uncommon situations gracefully. Say you have a screen with a button that loads data and then shows it in a different screen. The normal use case will probably be pretty straightforward, but what happens if the user presses the back button while the data is loading? There are a bunch of ways to get that wrong, and many of them will crash your app. Your cheap guys may not think to handle it. You’ll have to know to look for those kind of things yourself, or you may have an app that crashes, loses data, slows down, or wastes battery.
- Can you judge the quality of the code you receive? Two developers might both be able to develop an app that meets your requirements, but one of them may do it by employing best practices under the hood, and the other may have used the digital equivalent of duct tape and spit. The difference will matter when you have additions made to it – a well-designed app will be easily modified and extended. A poorly-designed app may take three times the effort (or you might have to trash it and start over). Speaking of which…
- Do you have any plans to expand your app in the future? Even if the cheap guys write decent code, how likely do you think they are to be around when you come back 6 months from now? I can’t say they won’t be, but I wouldn’t count on it. If they’re not, you’ll have to vet developers again, and they’ll need some time to get up to speed on the existing work.
- Do you need someone to write culturally-aware English? I’m not talking about offending people because of deeply held values. I mean picking the right tone of voice, with common grammar constructions, so that the text looks natural.
- Do you need to get in touch with your contractor during your local business hours?
If you’re still not deterred, go ahead and give a low-cost freelancer a try. It has worked out well for plenty of companies. Just remember, sometimes “cheap” is the most expensive option.
* This link is to a rather wordy post and you’ll have to get halfway through before you see the bit about measuring productivity. However, the article has loads of other good information on why it’s worth it to hire the best coders despite the cost.