To stay competitive in today’s marketplace, companies of all sizes are investing in custom software solutions to increase efficiency and productivity, launch new business units, and increase innovation.
But how much does custom software cost to develop, and can your company afford it? Should you hire a freelancer or the small, local consultancy?
Or maybe you should take the “safe” route and hire one of the giants. (No one ever got fired for hiring IBM, right?) But can your business afford their sky-high hourly rates?
There’s a sea of options when hiring a software development company and a lot of variability in pricing and terms. That's why we created the following guide to help you make the right choice.
Like most service businesses, there’s a wide variety of custom software development companies to choose from, and a lot of variability in pricing.
In our experience, most development companies fall into one of the following six categories. (Note: these categories refer to domestic, US-based companies. We’ll address offshoring later in this article.)
As the largest players in the market, Enterprise Class consultancies generally have hundreds, if not thousands, of developers and consultants on staff and generally work with governments and Fortune 500 companies that can afford their sky-high rates.
Projects usually range in size from $500,000 to more than $100 million.
Hourly rates are generally between $250 to $850 per hour, depending on the experience level of the developer/consultant.
Given their premium price tag, you’d expect these types of companies to deliver superior results, and they sometimes do.
But they tend to use a “waterfall approach” to software development and attempt to build the entire software program all at once instead of using an agile approach, where an MVP (Minimum Viable Product) is built and additional features are added over time.
The waterfall approach is costly, takes a long time, and can be risky since the entire application is developed upfront with no user feedback. This greatly increases the risk of building the wrong app that users won’t adopt.
Big Business Class consultancies tend to work with other large businesses that can’t quite afford the costs of the enterprise class shops, but still have big budgets.
They usually have between 100 to 1,000 developers and several offices around the world.
They’re not as expensive as the Enterprise Class, but they certainly aren’t cheap. You can expect to pay between $200 to $300 per hour for projects ranging in size from $125,000 to more than $5 million.
These companies are generally well known and popular among software developers, so they tend to attract top talent and build strong development teams.
If you can afford their relatively high rates and project minimums, a Big Business Class consultancy can be a good option. But they tend to be quite a bit more expensive than mid-market software development companies.
Mid-Market Class consultancies tend to offer the best balance between cost and quality.
They generally have between 10 to 100 employees and typically work with small and medium size businesses, as well as the occasional Fortune 500 company.
You can expect to pay between $125 to $175 an hour for projects ranging in size from $50,000 to $5 million.
The right mid-market consultancy with a strong track record of success can be an excellent choice for the budget-conscious buyer looking for a good balance of quality and cost.
Given their smaller size, these types of companies can also be a bit more risky than their bigger brothers. You’ll need to double check their references and make sure they’ve successfully completed several projects of a similar size and scope to yours.
Small Class software development companies tend to run very lean businesses with a handful of employees and low expenses.
They can have between 2 to 10 employees, including the owners of the company, and generally work with startups, local small businesses, and medium sized regional businesses.
Their rates can range from $75 to $175 an hour for projects ranging in size from $10,000 to $500,000.
Oftentimes, Small Class development shops will specialize in one specific area, like UI / UX design, ecommerce solutions, mobile app development, or specific programming languages like Ruby on Rails, Node.js, React Native, and so on.
Given their small team size, they only need to take on a couple of projects per year to keep the business going, and they often are booked out for months in advance.
If you have a small project or if you’re budget sensitive, a Small Class software developer could be a good option. And if you find the right company, you can achieve excellent results for a fraction of what you would pay a Big Business or Enterprise Class software development company.
However, since they’re smaller businesses, you need to make sure they can handle a project of your size. Double check their references and ask them to provide examples of successful projects that are similar in size and scope to yours. Also try to get a sense of the financial stability of the company. We’ve seen several of these small consultancies go out of business in the middle of projects, run out of money and have to lay people off, or fail to complete projects and be unable to repay deposits since the money has already been spent.
If you have a small project that can be handled by an individual and doesn’t require a team effort to complete, hiring a freelance software developer can be an acceptable choice.
Freelancers tend to come in two flavors: the new developer that recently graduated from development bootcamp, and the seasoned pro who used to work a 9-to-5 but got tired of the rat race and decided to strike out on their own.
Newbie freelancers tend to be very excited and passionate about their newly acquired skill and are willing to accept pretty much any job at nearly any rate.
The best of them can sometimes be quite skilled for their experience level. However, they often don’t know what they don’t know and will overestimate their abilities, causing them to over-promise and under-deliver.
You can expect to pay $50 to $75 an hour for an inexperienced freelancer for projects ranging in size from $1,000 to $50,000.
The seasoned pro has been developing software for a long time, knows half a dozen programming languages, and has worked on dozens or even hundreds of custom software projects.
They might be willing to work on your project (if you’re lucky) and will usually charge a premium for their time, typically between $100 to $300 an hour for projects ranging in size from $5,000 to $100,000.
Offshore and nearshore software development companies come in many shapes and sizes, but most often they are large organizations with hundreds to thousands of developers spread across the globe.
Offshore development rates can range from $25 to $50 an hour. Nearshore software development tends to be slightly more expensive, with rates ranging from $40 to $75 an hour. Project size tends to range from $10,000 to more than $1 million for both.
Offshore development can be cost effective, but also very risky if not properly managed. Many offshore software development projects fail, often for the following reasons:
The most important aspect of software development projects isn’t programming, it's communication.
Clients almost always underestimate how hard it is to properly communicate their vision to the development team.
Even with clients in the same time zone, or in the same city, communication can be challenging.
So you can imagine how difficult it is when the designer and developers are on the other side of the world, in opposite time zones, and speak different languages.
Many offshore shops have hundreds of developers and focus on cranking out a high volume of low-cost projects, using older technologies that produce subpar software applications.
The unfortunate result is that many offshore projects never launch — and if they do, they are often buggy, outdated, and don’t function properly.
A common tactic employed by many offshore software development companies is to quote very low hourly rates, but over-staff the project with redundant, unnecessary resources.
Most projects require only a part-time project manager and a part-time QA professional, and no business consultant. But many offshore companies will staff five full time employees regardless of what’s really required, just to get the total project cost up. For example, a common staffing plan for a medium size project will often include:
The result is that the true hourly rate, in terms of productive hours actually worked, is much higher than quoted.
Offshore development projects often go over budget and miss deadlines, in part due to the inefficiency of communicating across time zones. Day-to-day problems that could be resolved in a matter of minutes by a team in the same time zone, can take days when working across time zones.
For instance, let’s say a problem pops up, you notify your offshore developers, and go home for the night. The offshore team needs clarification of the problem, responds while you’re asleep, and they head home while you head into the office. You respond to their message and wait 12 hours for their response. This process continues, and a problem that should have taken a few minutes to define and fix has now taken days. Multiply this dynamic across the hundreds of problems that arise on most development projects, and it’s easy to see how delays are common when working with offshore teams.
At FullStack, we regularly have clients approach us looking for help fixing their app that was developed offshore.
As a courtesy, we’ll usually review the codebase and offer our opinion. Of the dozens of offshore projects we’ve reviewed, we have yet to see one that we’d consider to be salvageable, and our analysis is almost always the same: scrap the app and start over.
Despite all of the very real challenges outlined above, it is possible to use offshore/nearshore developers on your project successfully, if you follow these tips.
Building custom software is a great way to improve efficiency and innovation within your organization. There are many choices when hiring software developers, and it’s important that you hire the right type of consultancy for your project.
Here’s a quick summary of the different types of software consultancies, and their respective hourly rates and project costs.
Types of software consultancies, and their hourly rates and project size:
We’d love to learn more about your project.
Engagements start at $50,000.