SUBMITTED BY PAUL FRANCIS
Many, if not most, companies solicit outside help when building a web or mobile application. The problem is that there are numerous app development companies and app developers who could be hired for the job. How do you find the best app developers for your particular project? Unlike buying a new appliance, there is not a simple evaluation process to follow. You are buying an critical service, not an off the shelf product.
I work at an Austin-based web & mobile app development company that has built over 350 applications. In this article, I am going to share with you the things I would consider when selecting the development company for my next project. Hopefully this “insider” perspective will help you make the best possible decision on your next project!
Every established development company should have a projects or case studies page. Find that page and spend some time digging through it. Here are some of the main things you should look for:
Are there apps that are similar to what you are looking to build?
If so, that is a great sign. Even if this company does not reuse code or even if the same developer does not work on your project, having this related experience can be invaluable. Experience on other apps will allow them to better estimate your project, make them more efficient, and they will likely have unique insight into potential problems you could face along the way.
Download the listed apps and try them out for yourself.
These are the apps this company is most proud of. Download the apps or go to the website and see how they work. Don’t fault them for the number of downloads the app has, unless this company also managed the marketing of that app, but do carefully review how the app looks, functions, and performs.
Consider their customer/client list.
Does this company work with startups? Are all companies listed fortune 500s? App development processes differ depending on who the app is being built for. Find app developers that understands how to work with a company that is your size and with your budget.
Consider the types of apps listed.
Does this company specialize in a certain type of app (maybe games, finance, etc.)? This is not really a problem or a preference, it is just important to know what sort of apps they have been building and what other companies have selected them.
Team Size and Composition
You want to understand how the company is structured. Some app development companies only have 1 developer, while others have 500. It is not just the overall size that matters, it is also their composition. Here are some common titles you might see listed on their team page. If they don’t have a team page, go to their LinkedIn page and use that for this part of your research. To non-developers, developer titles can be unclear, so here are some common titles you might find:
Developer (alternatively full-stack developer) – This individual is someone who can likely help with most parts of a development project. They don’t specialize in a particular part or aspect of development.
Front-end Developer – This developer is someone who implements what the UI/UX designers create. They specialize in making the app look and feel great.
Back-end Developer – This developer is someone who implements most of the logical portions of the application. They are responsible for making sure the right values are passed to the app, that the data the app uses is retrieved quickly, and for much of the security of the app.
Designer or UI/UX Designer – This person will handle the design of your app. They will select colors, fonts, styles, and maybe even make your app icon.
Project Manager (Or other business-like titles) – People in this role will oversee your project. They will likely be your main point of contact while working with the development company.
Most companies will have some combination of these roles. Depending on their particular ratio, you can determine what sort of project this company is best aligned for. Having more front-end developers means they might work on simpler sites that don’t have a ton of functionality. Typically a brochure-like website or app. Having more back-end developers might indicate that they work on more complex (and often more B2B-type) applications. The ratio of Project Managers (PMs) to developers also lets you know who you will be interacting with and what services you will be paying for. The size of a project should dictate the ratio of the roles above, with smaller projects weighted more towards design and development (direct value) and larger projects having additional management.
Ultimately you can use this information to better understand how the company is structured and what sort of projects they are best prepared for.
Their Technology “Stack”
Many app development companies will list specific technologies on their website. If they don’t make this clear, check out their career page to see what skills they require or find their blog and see what they are talking about. As a last resort, check out their developers’ Linked-in profiles, but keep in mind that many happily employed developers do not update their profiles.
Once you have a list of technologies, here is what you should do:
- Figure out if they use a single “Stack” for all projects or vary project-to-project. To do this, see if a company has competing technologies listed (i.e. AngularJS and React or Java, C#, node.js, Go, and php). If they don’t have competing technologies listed, they likely use the same stack on most projects. This means the company will likely be very adept at handling a certain type of project, if it fits their stack well. It also might mean that they are selling you on a stack, not because it is the best fit, but because it is the best fit for them.
- Figure out who else is using a similar stack. Developers love to talk about their technical decisions, both when projects succeed AND when they fail. Try to find postmortems or case studies from technology companies similar to yours. Find things written by both developers and other stake holders. It is not uncommon for companies to move between stacks at certain points in their development. Try to learn why they made these decisions and learn from their mistakes and successes.
Most importantly, talk to a someone at the company you are interviewing about their recommended stack for your project. Learn why they recommend a particular approach and ask what other options they considered. Ask about other projects the company has completed using this approach.
Developers frequently have passionate arguments over languages and technologies, but the truth is that fantastic software can be written using a litany of approaches. You just want to make sure your developer or development company can make a compelling argument for their chosen approach.
Their Average Project Size
Take another look at the company’s projects page. Try to determine how large each project is. Does this company specialize in very large and complex projects or do they focus on smaller websites and apps? The main thing you want to consider here is where would your project fall on their project-size spectrum.
Do you want to be the largest project a company has ever done? Almost certainly not! The company could lack the necessary experience to handle a project of this size. This could lead to the app not functioning properly, the project going substantially over budget, being significantly behind schedule, or outright failing.
You also don’t want to be the smallest project a company is working on. This is a quick way to become their lowest priority project or get their least experienced and capable developers assigned to your project.
In an ideal world, I would like my project to be about the 70th percentile in terms of size and cost for my development company. This way, I can be confident that they can handle the project and ensure that my app gets the attention it deserves.
A company’s history can tell you quite a bit about a them. Just like you would look up someone on Facebook (or another social network) before agreeing to a first-date (or perhaps swiping right on them), you should seek to learn as much about your potential partner as possible. Here are some things I would try to learn about a company before hiring them to build my app:
- How long have they been in business? There is not really an ideal age for a technology company, but it can inform your decision. Less established businesses will have a higher risk of failing during or after the completion of your project. Almost all software requires some tuning over time and often the best matches are made for the long term.
- How much turnover do they have? Ramping up a new developer on a project takes time and can be a risky process. Often apps will have 1 or 2 people who fully understand how a solution works. If a company has high turnover, it is possible that the 1 or 2 developers who fully understand your app will not be there a year (or even 6 months) from now.
- How much repeat business do they have? Look again at the company’s project page. Do they have several apps written for the same company? Do their apps have a large number of patches over an extended period of time? If yes, you can infer that they have a moderate amount of repeat business. This is one of the biggest endorsements of a company you can find.
There is a lot that goes into finding an app developer. Experience, price, comfort, and a full understanding of your vision are all things that should inform who you hire for your project. I hope this article helped provide you with my “insider’s” take on how to find app developers!
Additionally, as someone who works at a pretty awesome web and mobile development company, I hope you consider DicoSoft in your search. If you follow the above advice and we meet your criteria, please consider reaching out! We would love to hear about what you are looking to build!