How to Hire a Mobile App Developer
by Tim Bornholdt · Published on November 18, 2019
The business plan around your app is starting to take form and you’re ready to begin development. So where do you start with hiring someone to build out your app?
- Do you build it yourself?
- Should you contract a freelancer?
- Hire a full-time team?
- Connect with an agency?
- Outsource the project overseas?
Each development team has its pros and cons. To help you choose the best route, we break down each one with their best case scenarios.
Listen to a podcast episode on this topic.
1. Do it yourself.
If you are already a developer or you want to become a developer and not a business owner, developing the app yourself is a cost-effective approach.
- Cost is low (just your time).
- You will have an intimate knowledge of how your code works, along with an appreciation for the development process.
- You won’t have issues communicating to a development team on how you want the app to look and operate.
- A proof of concept can be developed quickly so you can demonstrate your idea to a customer.
- Obviously, you need to know how to build an app, both the front end and backend.
- Development time will take longer than if you were delegating tasks to different teams.
Best case scenarios for doing it yourself:
- You are already a developer.
- You have someone else working on the business side of your app (marketing it and determining how it will make money).
2. Hire a freelancer/independent contractor.
If you already have a project going, it might make sense to bring in a freelancer for a certain task.
- You pay them a fixed rate (or equity if you’re lucky and find someone who really believes in your project) and don’t have to deal with W2s, social security taxes, benefits, laptops, etc.
- Your app has a specific need for a hired gun who knows that need inside and out. Most iOS and Android developers aren’t complete system specialists. If you have something very specific like a Bluetooth component or you need someone with expertise on engineering the backend of a social network, hiring a freelancer to focus on building out just that part of your app can be beneficial.
- Once the project is done, the freelancer is gone. You don’t have ongoing HR costs or employee costs.
- Finding a good freelancer is tough. Not a lot of people do freelance development as a career, and the good ones that do are often booked up with other contracts. You can try sites like Fiverr and Upwork, but often times it takes getting out in the community and networking to find someone to work on your project.
- Good freelancers can be rather expensive with high hourly rates.
- They want to do it their way. Generally speaking, the software and tools used are going to be familiar to any developer, but they might lay the code out in a different way or use a different development approach. If that developer leaves, a new developer will need to spend time learning how the code works and might charge you for the time spent rearranging pieces to make it comfortable for them.
- As soon as the contract is done, they are off to the next project. This is especially problematic if you have a big roadmap of features or are building a bigger business around your app idea.
Best case scenarios for hiring a freelancer:
- You have a smaller project idea (just an iOS app with no server backend) and can just hire one developer.
- Your project is a “one and done” type of project that doesn’t require a lot of maintenance (like a calculator or bidding tool).
- Your app has a specific need for a specialist (like interfacing with a Bluetooth device).
3. Recruit a full-time team.
Needing a dedicated team is a good indication of a mega successful app! But they can also be mega expensive.
- They’ll work on what you tell them to work on. They’re not working on other projects like freelancers or agencies.
- They can move faster than if you hire an agency or independent contractors because they’re fully vested in your project.
- Full-time teams can do stuff that independent contractors might not budget for, like when you’re in support mode and not really adding new features. We like to call this the “flossing your teeth” type of development tasks: setting up unit or automated testing, writing documentation, scheduling automated backups, and cool things like setting up “chaos testing”.
- A full-time team is probably the most expensive development route you can go. Salaries alone can be around half a million dollars a year, not including benefits and other infrastructure costs like human resources.
- It’s hard to keep talented developers engaged full time on a single project. Again, developers are in very high demand, and they like a good challenge. If your app is in maintenance mode (something developers generally don’t like working on) and you can’t keep them engaged with new problems to solve, they might leave.
Best case scenarios for hiring a full-time team:
- When you need total control and focus on just your app.
- If you are spending more than $500,000 a year on agencies.
4. Working with a consultancy/agency.
Agencies are a one-stop shop. You bring them your idea/problem, they strategize with you to solve your problem, and they have all the staff to design, develop, test, deploy, and support it.
- You have one or two points of contact and don’t need to manage (or pay) a team of developers.
- If a developer leaves, it’s not on you to replace them. An agency can replace a developer quickly and get them up to speed.
- Agencies have expertise across many apps. Take the Jed Mahonis Group’s portfolio for example. We’ve built apps that connect with Bluetooth, apps that are HIPAA compliant, social networking apps, a pizza delivery app, a dental staffing app. We’ve built an app for funeral homes and an app for cities to communicate to their citizens and businesses. This translates to plenty of experience solving problems in several different industries.
- It’s usually cheaper than hiring a full-time team. You can engage with the agency when you want to get the app built, then let them go when you don’t need them. For ongoing support, you can pay an agency a retainer or simply pay as you go, depending on your app.
- They are not at your beck and call. Agencies typically balance multiple clients at once, so things don’t move as fast as a dedicated full-time team.
- Agencies can get expensive. Many agencies charge between $150-200/hr. More prestigious or specialized agencies can get up to $500/hr.
- If you scale to the point where you need full-time support, you’ll have to work with them to transition to a full-time team. A good agency will work with you through this transition, but some agencies might feel scorned and say, “Here’s your code, bye.” This leaves you to figure out the transition on your own.
Best case scenarios for working with an agency:
- When you have an idea and don’t know how to execute on it.
- When you want a one-stop shop to turn your idea into a product.
5. Outsourcing to an abroad team.
Hiring an overseas freelancer, full-time team, or agency to develop your app is the final development route you can go.
- Costs are dramatically lower. We’ve seen overseas agencies charge maybe a fifth of what an on-shore agency would charge and freelancers with rates as low as $10/hour.
- As the old saying goes, you get what you pay for.
- Finding a good stateside developer isn’t easy; finding a good international developer is even harder.
- Protecting yourself isn’t as easy since enforcing a contract overseas is challenging.
- It’s hard to build trust with a company that you can’t chat with in person.
- Some industries (like financial tech) are bound by government regulations to use local development talent on their projects
- Communication could be difficult, not necessarily language barriers as most developers speak English, but more along the lines of cultural barriers. You have to be very specific when communicating. A developer on the other side of the world could misconstrue a phrase like “beefing up security” to be about cows and not strengthening your security.
- Time differences can also be difficult. A 12-hour difference between the U.S. and India can affect communication and development time. When your developer is working at 1:00 in the morning your time and has questions that you don’t answer until maybe 12 hours later, the development time of your project can be lengthened.
Best case scenarios for outsourcing:
- If you can get a referral to a team or have personal experience with an overseas team.
- If you are willing to fly out and meet the team in person, which helps establish the trust factor.
There are many ways to go about hiring a development team for building your app. Choosing the right model depends on your project. In an upcoming article, we’ll dive into the questions to ask each of these types of development teams to help you compare, for example, one agency to another or one freelancer against another.