Very often business owners that plan to do or already have a running software ask themselves a question “should I hire freelancers or a software house”. We will not give you good news, as the answer is as usually “that depends”.
In this article, we will try to go through the most popular pros and cons when it comes to hiring both. Hopefully, it will allow you to make an informed decision. If at any point you will feel lost or in need of some guidance – we would be really happy to help you! With each client, we try to be transparent and objective and if we see that freelancers would be a better choice we would not be afraid to recommend it – you can trust us:)
The most popular and easiest assumption is that if you are planning to build something bigger, are not a tech-experienced owner or do not have a tech partner and have the good budget (I’d say more than 40K USD) you should go with a software house. On the other hand, if your project is very small, doesn’t require a lot of project management or you have a product and simply need somebody that would fix some bugs than definitely try to find a freelancer. So this is just the general idea explained in a nutshell, but if you are more thorough than that, read the whole article:)
- What constitutes a freelance developer?
I will not surprise you:) Freelancer is an individual that writes software. He can have either technical or nontechnical education. This group is very diverse and it’s hard to really characterize them. They come from different backgrounds and have different experiences. Their CVs can be awesome or poor and the same goes for the quality of their work. The most important fact is that most often they tend not to have particular references and they are not always following simple rules of everyday work – which doesn’t mean they will do a bad job on the other hand
- What constitutes a developer from a software house?
Here I think I’ll be able to surprise you a bit more. Developers from a software house also write software but there is a small, yet significant difference. Such a person was usually recruited by a CTO and should represent a certain standard of the company. So if you will find a high-quality software house (please, do not confuse quality with size) that probably means that the engineers hired are also representing the same quality. Another thing is that the company usually invests in these people to grow their knowledge. And what is most important – engineers from software houses have the support and knowledge of their team members, managers, etc. Very often those people tend to have an engineering degree and a proven career path which should be treated as reference (you can check it on LinkedIn. The rule of thumb is to avoid people who change jobs every 6 months).
How to define who do you actually need?
In order to make the choice easier you have to define certain aspects like:
- Size of the project
- Type of industry
- Investment risk
In my modest opinion, a good software house should be able to help you with defining some of the areas and also choose the proper course of action. The good thing of a software house is that even though the engineers can be not very well oriented business-wise, usually there is someone that actually is. With a freelancer, it’s a coin toss in favor of non-business people.
Out of the points I have written above I’d like to draw your attention to a few important aspects.
The first one is the budget. Let me be clear – nobody can estimate things 100% accurately in an Agile environment. But people from software houses usually have better experience in that and if the company is trustworthy they will probably be closer to their estimates than a freelancer. Deadlines is another important factor. There is a simple mechanism that can explain the difference – it’s easier to ruin the reputation of a company than the reputation of a freelancer. That is why usually (of course do not treat anything I write here as a black and white approach) companies care more about their estimations and in rare cases, they can even take some of the responsibility on them, whereas freelancers usually want to work as employees type-of-deal and do not take responsibility eagerly. I won’t even mention about few horror-like stories that a freelancer just disappears:(
Another important factor that tends to push the scale into software house direction. Usually, whenever you hire a freelancer you will have to manage him. Sometimes even micro-manage. Whereas in the case of a software house you can count on the support of Project Managers (of course it’s paid, but you will know what you pay for). You can say “hey, so maybe I’ll just hire a PM as well”. But unfortunately, it doesn’t work this way. Building the team takes time and experience – two luxuries you usually do not have.
As I mentioned before (and I will do it again, because it’s a key-element) when you hire a freelancer you just gain from his experience. When you hire a software house you gain the experience of their lifetimes combined. It’s that simple, although you have to find an SH that shares knowledge internally.
Similar to the above. In the case of a freelancer and a non-technical founder, you will have no means to see if the quality of the code written is good. When hiring a software house you will get the quality by default, as it SHOULD be guarder by the CTO, EMs, etc.
As a summary, I want to show you a table I have found on the internet that briefly summarises the differences.
Remember – I’m not saying that it’s always wise to go with a software house. I’m just suggesting that you have to consider a few factors to make an informed decision:)