The 6 types of programmers you can hire to code your app or website
And the pros and cons of each
At some point, you will probably have a million-dollar app concept and/or need a website. Most ideas die here because finding a developer can be so overwhelming. Your options fall into 6 categories. You can find good and bad developers in each category, but in general they tend toward the following pros and cons.
TLDR: You get what you pay for: more expensive developers are more likely to deliver on their promises. Always hire someone who’s subject to your country’s laws, and always shop around.
1. Freelancer
Self-employed. You probably hire them on a 1099 (US), or through a site like Upwork.
Cost: Low to medium
Risk: High
Pros: Freelancers are generally inexpensive. You pay for one person’s hourly rate, instead of a team’s combined hourly rates. They don’t need to get feedback from coworkers and managers, and so can move quickly.
Cons: There’s a huge range in how well freelancers deliver on expectations. One might have a great-looking portfolio but not know how to code. That’s bad if you need something that a simple WordPress template can’t handle. Working alone means freelancers can afford to be messy. Many developers have taken over a project from a freelancer only to find it’s so disorganized that starting over from scratch is actually cheaper.
Good if: Your project is heavy on visual design and light on functionality. A freelancer’s biggest asset is flexibility.
2. Offshore Development Shop
Often located in India, Pakistan, or the Philippines.
Cost: Low
Risk: High
Pros: Overseas shops offer very low rates. They work well with extremely specific technical instructions.
Cons: Although your cheapest option in the short-term, these businesses cost the most in the long-term, and can put your entire business at risk. Located in developing countries with little regulation, they work their employees too hard, cut corners, and produce unmaintainable code. They will meet the requirements you give them exactly — which means if your requirements leave any room for error, you’re going to end up with something that doesn’t work. Complain and they’ll say, “Sorry, we met all your requirements.” Contractually they’ll be correct, and you’ll be out of luck (and budget).
Good if: You’ve already published several apps. You’ve managed teams of developers and have written technical requirements for years. You would just code it yourself if you had the time.
3. Onshore / Offshore Development Shop
Either located wholly in your country, or headquartered in your country with most development taking place at a branch overseas.
Cost: High
Risk: Low
Pros: Your biggest protection is that these businesses have a brand to protect within your country. If they do substandard development, and you spread the word, it could seriously hurt their reputation. Just as importantly, they’re in the same legal system as you. As a result these companies place a heavy emphasis on quality assurance (QA), project management (PM), and business analysis (BA), making sure all your expectations are met.
Cons: Having QA, PM, and BA adds considerable overhead to the cost of your project.
Good if: You want to be completely confident that your time and money are going to the best possible use. You can pay more to offset risk.
4. Technical Cofounder
Brought on early in your company’s lifetime, usually as the second or third employee. They focus on code while you focus on growth and marketing.
Cost: Medium
Risk: Medium
Pros: You usually offer a cofounder a stake in your company, rather than a salary, so they only get paid when you do. In addition to technical skills, they bring vision and a network to add to yours, which doubles your assets.
Cons: A cofounder invests their livelihood in your idea. Working like your life depends on it isn’t sustainable. Building a business together will put even the healthiest friendship to the test. Also, like freelancers, technical cofounders work in a vacuum and are susceptible to writing bad code that costs you money.
Good if: You know a programmer with a solid technical background whom you would trust with your health, your money, and your life.
5. Staff developer
Hired as an employee.
Cost: High
Risk: Medium
Pros: You benefit from everything your employees learn as their careers progress. Since they report to you, you don’t need to worry about scheduling around their other commitments. You know precisely who’s going to be working on what and when.
Cons: If you hire a PHP developer, and then realize you actually need a .NET developer, your options are to pivot your whole project, ask them to learn a new technology, or let them go. This can be devastating to your employees’ morale. You’re responsible for salaries, project management, and working conditions.
Good if: You already have several thousand customers, a solid revenue stream, and an HR department with bandwidth to spare.
6. Yourself, sort-of
Cost: Low, sort-of
Risk: Low, sort-of
If you need a website or an eCommerce shop, there are dozens of off-the-shelf solutions that will get you 80% of what you want without you having to write a line of code. It may not be exactly what you want, but consider whether that remaining 20% is worth the potential cost. Developers (like me) like to rag on WordPress themes, Shopify, Wix, and SquareSpace, but deep down we know that in many cases they can do almost as good a job as we can at a fraction of the time and cost. Trying to do it yourself with one of these tools is time well-spent, even if you ultimately hire a developer: you’ll get a much better idea of what’s possible, and what you want the end result to look like. Think of these off-the-shelf solutions as planning tools which could potentially save you a lot of time and money.