One way or another, every startup being built to scale or offer a unique value proposition to an existing market will have to invest in developing its own proprietary software. In most cases, developing that software will be the single biggest expense a startup has during its journey towards generating revenues and, eventually profitability.
I’ve been on both sides of the fence. Over more than 5 years between 2012 and 2017 I cofounded, ran and eventually exited a web-based startup. Now I work for an IT outsourcing company that develops software for a wide range of companies from startups to some of the biggest corporations in Europe.
When myself and cofounder were developing our startup’s software, we started out working with outsourced agencies. We then took the strategic decision to hire an inhouse development team.
We took that decision based on what we thought at the time were good arguments. We thought we’d:
In the end, we were wrong. Bringing our software development capacity inhouse was our single greatest strategic mistake. It ended up costing us a lot of money and drastically reducing our ROI when we exited.
I understand why many startup founders are convinced the ideal scenario is an inhouse development team. But having been through the process myself, I am now convinced the arguments that founders believe support their inclination towards hiring inhouse capacity are not backed up by the most probable outcomes.
In fact, in most cases I am certain there’s a much higher risk of a startup bringing software development inhouse meaning:
If I could time travel, I’d focus my efforts on finding the right outsourced software development partner. Here’s why:
Is there a contemporary startup company in 2020 that isn’t underpinned by its own proprietary, custom software? If we define ‘startup’ as a business being built and intended as scalable, then it’s probably fair to say every startup needs to develop its own software. Even startups with a physical product, a relative rarity for those that attract serious venture capital, require high quality customer-facing web applications for marketing and sales.
To quickly gain market share and scale, startups also almost always have to try and stand out from the competition as unique in some way. That usually means one of a few things.
Almost without exception, quality, custom software supports startups in providing the USP they are relying on to gain market share.
If a startup is offering an entirely new product or service, one that they have to convince on the need for, creating a new market, it is even more likely that proprietary software will underpin the value proposition.
Finally, and crucially in the case of startups, investors are often only willing to put up venture capital at a valuation that is attractive to the founder or cofounders if the young company owns its own intellectual property and/or proprietary systems that provide a barrier to entry and competitive edge. In most cases those assets are rooted in software developed and owned by the startups.
This is particularly close to my heart having been for a number of years on the other side of the fence as the cofounder of a startup I ran for 5 years before it was sold on. It was a web-based media and comparison site in the retail investment space and our core asset was the website itself.
We developed our MVP with an outsourced software development agency, added functionalities with a second third-party software development provider and then eventually brought our development house by hiring a team a team of permanent employees – 3 web developers (PHP – it was 2013 😊) and a front-end designer.
We made the call to move to an employed inhouse team for the same reasons as many startup founders do:
Ultimately, and in retrospect which makes geniuses of us all, that decision was a bad one and cost us a lot of money. But having personally been in the position of startup founders, I am acutely aware of the objections to working with IT outsourcing companies when developing core, proprietary software. The software that the startup’s future value will to a large extent depend upon.
Several years on, if we could turn back the clock, my co-founder and I would not have hired an inhouse software development team. Yes, we had some issues with the outsourced agencies we originally worked with, mainly around release deadlines. But the problems we did have could have been neutralised with a better choice of partner. We should have taken more time and employed a proper methodology when it came to selecting our outsourced web development partners. That would have avoided the situation we found ourselves in of being a low priority for our outsourcing partners.
We were a relatively small project for them and as other more financially meaningful projects came in, at least that’s the conclusion we reached, we dropped down the priority list. It was a small agency with just 3 developers, which meant they probably often overstretched themselves on capacity rather than turning new projects down. We were the ball that was dropped as they juggled more work than they could realistically cope with. Some more experience on our part, choosing a larger agency with more flexibility to allocate resources across variable project loads, demanding stiffer penalties be put in place as a discincentive to delays and having in place a far more detailed Sprints plan, would have gone a long way towards avoiding a partner that would hold up our release cycle.
The problems that bringing our team inhouse led to, on the other hand, were more fundamental.
By far the biggest drawback of us having a 4-person inhouse development team was the heavy overhead of salaries we had to meet every month. That was ok for a while but at a certain point the expense became a serious issue for us. If we’d outsourced our software development, we would have been able to scale back or pause work on new features over months when our cash flow meant we really couldn’t afford the investment.
Scaling back on development at certain points would have been a compromise but it would also have saved us a lot of stress. And, ultimately, our startup would have been worth a lot more to us at the point we sold it if our cash flow management had been better.
Keeping up with the fixed overhead of paying our inhouse development team meant we instead built up a considerable debt of back taxes. Those accounted for a big chunk of what we eventually sold for, wiping out a lot of the upside we’d worked so hard for.
Having more flexibility around our overheads, especially our highest expense which was software development, would have resulted in a financially healthier startup and a better exit result for us as cofounders.
Attracting quality candidates for the development team positions we recruited for was far more difficult than for any other role within the company. Simply placing a premium ad on the main job boards as we usually did, wasn’t doing the trick. Candidates from the usual sources were low in numbers and quality. Which meant we had to spend time, effort and a little money spreading the net on LinkedIn and various other channels in order to attract enough suitable candidates.
Going through CVs and cover letters to dig out the few candidates that met our requirements took time. Going through technical and general interviews more time.
And technical interviews presented us with a problem. Neither myself nor cofounder are developers. My cofounder at least had an educational background in Computer Science but had never gone on to become a developer. We had to rely on some help from a friend to assess the technical competencies of applicants, which wasn’t ideal.
A dearth of applicants meant we made some compromises on who we eventually hired and it is probably fair to say that of the team of 4, we were happy with one of the developers and the front-end web designer. The other two had questionable attitudes and motivation, were expensive and left the company after several months having sucked up resources in exchange for limited productivity and results.
A third major issue we faced as a direct result of neither cofounder having a development background was effective delivery management of new feature releases. We had no good benchmark to be able to gauge if our development and release cycles of new features, sprints, were efficient or not.
We had to trust the input of the developers themselves, which often wasn’t consistent within the team. The situation also represented clear potential for conflicts of interest and an experienced authority figure able to accurately estimate timelines based on objective benchmarks was a big miss.
In retrospect, we made the wrong choice bringing our startup’s software development inhouse. We thought our objections to working with an outsourcing agency were well founded and the decision to bring it inhouse in the form of a team of permanent employees would give us more control, save us money and allow us to release faster.
In the end, the opposite turned out to be the case.
We had tried working with third party software development providers and hadn’t been satisfied with that either. At the time the obvious answer we saw was to bring development inhouse.
What we should have done was find the right outsourcing partner. One that kept to deadlines.
I’m not saying that working with an IT outsourcer comes without the potential for problems. We had problems with our first two picks, which was why we decided to swallow the ‘inhouse pill’.
Crucially, there was no realistic way we were going to avoid the problems we encountered as a result of our inhouse decision. But only one factor had to change for the approach of our startup developing its software with an IT outsourcer being the ideal solution – choosing the right partner. Achieving that was something that was far more within our control, had we tried again with a stricter, better selection procedure.
An IT outsourcer that balanced their own business interests with our business interests for a win-win would have unlocked numerous benefits that would have made a big difference for our startup and our return on investment on our eventual exit. What turned out to be a very modest success, we still did exit with some ROI, could have been a lot better if we had avoided the strategic error of hiring a fulltime inhouse development team.
The right solution for one startup is not necessarily the right solution for all startups. Circumstances vary. But there are a number of reasons why it can be strongly argued IT Outsourcing is the optimal choice for startups developing their own software that apply to most young companies during their early stages of development.
No overheads – using IT Outsourcing for software development means startups can scale up and down as cash flow allows. One of the biggest problems for youngest companies is uncertain cash flow. The timing and success of funding rounds is never guaranteed. Being able to slash expenses at short notice can be a life saver for especially early stage startups. Minimal fixed overheads allowing for costs to be nimbly adjusted is still often vital for startups in the growth stage.
Difficulty in hiring experienced and high-quality tech talent. There’s a general supply to demand gap on the market for software developers and other IT specialists. As of 2020, there’s an estimated half a million IT specialists less than market demand from the EU28. That demand to supply disbalance is pushing the cost of hiring even moderately skilled and experienced IT specialists such as software developers to nose-bleed level.
The supply to demand imbalance in western Europe also means that even if a startup were willing and able to hire the level of software developer or other IT specialists required to build their products to a high level of quality, the recruitment cycle would take significant amounts of time and effort.
In Germany, it takes an average of over 3 months to recruit a 3-person development team plus at least another month for them to reach a good level productivity. That’s a long time in the context of a startup’s need to build traction.
There are professionals who enjoy the challenge and dynamism of the startup environment, but they are a minority compared to those who prioritise the stability and traditional career opportunities associated with working for a more established employer. That’s the case even if the financial and benefits packages that can be offered are equal.
If it is difficult for established companies and even enterprise-level corporations to hire the IT specialists they need. It is even harder for startups for the reasons outlined.
In that context, a startup that wishes to hire IT specialists as inhouse employees needs to carefully consider how much time and effort will need to be dedicated to successfully recruiting and retaining them. Is fighting market constraints and attempting to hire permanent inhouse employees the best use of limited time during the startup stage?
The demand to supply imbalance in the market for IT specialists means a west Europe-based software developer tends to be two to three times more expensive than the equivalent specialist nearshored in Eastern Europe. That multiple can increase for certain particularly in-demand technology stacks and skills such as DevOps and cloud specialists.
Are arguments in favour of hiring locally and inhouse really strong enough to justify taking on that considerable additional expense and commitment at the startup stage?
If you’re not fully aware of the details of the differences in the average cost per hour in 2020 for different IT specialists based in different geographies around the world, you can a full table in our blog post IT Outsourcing – Unfashionable Necessity to Strategic Must.
We’ve already mentioned the time and effort most startups should expect to have to dedicate to recruiting IT specialists as permanent employees. There’s a compelling argument that alone means IT outsourcing is the better strategic option for startups, leaving founders and management to focus on their business, rather than a draining recruitment process.
But if that recruitment process is initially successful, what happens to the startup if the software development capacity hired inhouse decides not to stick around for long? Or cannot work for an extended period due to illness or injury?
When a team is small, personnel issues that inevitably do come up, or stand a high chance of doing so, have a huge impact on ability to meet planned schedules. And especially for startups, when traction and future funding rounds are often intrinsically tied to software release schedules, that has to be a major strategic consideration.
Working with an IT outsourcer goes a long way to neutralising that risk. That doesn’t mean IT specialists never leave an outsourcer for pastures new or it turns out they are not a good fit for a particular project or client.
But IT outsourcers typically employ tens to hundreds of specialists so have far more flexibility when it comes to replacing one individual working on a particular project. That’s true whether a change is temporary in the case of illness, injury or personal circumstances. Or permanently if they take up another offer, there is a personality clash or any of the other reasons why any employee may have to be replaced at a given moment.
Startups outsourcing their software development to the right partner should significantly de-risk the likelihood of release cycles not going to plan.
It’s of course a generalisation and there are exceptions, but a majority of startup founders are not technology specialists or even necessarily experienced product owners. They are entrepreneurs and managers.
That means their skill set and time will in most cases be of most benefit to their startup focused on creating the business model, listening to current or potential clients and designing the product or service.
Good IT outsourcers, on the other hand, are specialists in delivering software solutions to spec, on time and in budget. They have extensive experience in avoiding the planning fallacy in the context of software development. They are also experts in recruiting IT specialists based on both technical and soft skills and no what questions to ask and how to dig into a CV and track record. A continuation of that is expertise in assigning the right specialists to the right project, balancing technology stack, experience and costs to needs and preferences.
Delivery management is another area of experience whose influence should not be underestimated – keeping things going to plan but also reacting decisively when they don’t and making sure the project sponsor always knows what is happening, when and why.
Are you completely convinced you have the experience and knowledge to judge when a proposed technology solution is the optimal choice under the circumstances? Or to challenge inhouse specialists on realistic timelines or ‘that’s not possible’ feedback? If you are, great. If not, the right IT outsourcing partner does have that experience and knowledge.
Of course, all of the benefits I’ve associated with startups outsourcing their software development will only hold true if the right partner is selected. That’s the case when entrusting business-critical work to any 3rd-party company.
A startup taking the decision to bring development inhouse because they are afraid of making the wrong decision on an outsourced partner is the mistake my startup made. It’s the wrong way to approach such a major strategic call.
The right way is to weigh up the upsides and downsides of inhouse compared to outsourced software development capacity. Hopefully this blog and my experience has helped with that process. If you come to the conclusion, as I have, that the right outsourced partner is the correct strategic decision, then it’s a case of making the correct call on who that partner will be. You can refer to our dedicated blog post detailing the methodology to use when selecting an IT outsourcing partner.
Taking what you consider, on balance, the wrong strategic decision because you are afraid of getting that call wrong shouldn’t be an option. Especially as there’s at least as great a risk of inhouse hires not working out and that being a more challenging issue to overcome.
Taking a startup from nothing to revenue and eventually profitability is a road that will involve making many right calls as well as acting decisively when the wrong call has been made. Not every decision will work out perfectly. But being brave enough to trust yourself to take the right strategic decisions for your startup, and that you’ll get the details of those decisions right more often than not, is the only foundation for any success your business will go on to have.