A small business with an engineering team roughly a third or more of the size of the company does not make much financial sense. Overall, such a team potentially only creates 2-3 websites or applications a year. The team spends the rest of that time working on fixing bugs, rolling out small incremental features, or writing documentation. When the amount of revenue brought in by the business is compared to the amount of salary owed to the engineers, these proportions don’t match up.
One major argument against having internal engineering is the amount of time spent gathering requirements from the business on what to build. Long lead times attributed to requirements gathering or UI/UX design are only sustainable if the engineers are already working on another product. It’s only when work development work begins that the cost towards engineers is returning value. Ideally, you only want to be paying your engineers when they’re doing work towards the actual cycle time, and not time they spend around the water cooler waiting for requirements.
Having a team of engineers on salary can be very expensive, especially if your business is a startup or one where product margins are already very small. In order to get a realistic return, your business would need to keep engineers busy constantly in order to justify the large salaries they command. Where effectiveness becomes more relevant is on schedule overruns, such as when time estimates turn out to be wrong or unplanned work occurs. Factors such as these lead to heavily inflated website or web application design costs, when the actual cost is quite small.
In addition to the above, your business is paying more than just an hourly rate for salaried engineers. Additional costs such as computer hardware, software, desk office furniture, office supplies, increased rent and other factors are all easy to overlook. Salaried engineers might sound cheaper than a contractor or consultant at first. However, once all of the costs not associated with actual development are taken into account, going with a consultant becomes more attractive.
If contracting projects out to a professional software company seems expensive, it’s in your business’s benefit to look at the bigger picture or hiring a team of engineers on salary. The capital allocated to building your business is better spent actually building your business.