Google Analytics

in-house vs software house.jpg
In-house Team VS a Software House for a blockchain startup
5 min read
Aug. 31, 2020
Adrian Zamorski
Adrian Zamorski
Co-founder, CEO
5 min read
Aug. 31, 2020

So… blockchain is your passion and area of expertise, you’re entrepreneurial, had a great idea and ended up working on a startup. Congratulations! 

Now all you need is some coding to power it up… and here starts the trouble. Too many options — should you start building an in-house programming team or look for a software house to collaborate with? As everything else in life, both of these solutions have their advantages and disadvantages. Let’s look at them together in an analytical fashion to help you make the best decision.

In-house development team

Building an in-house development team is quite an undertaking — making this decision is often a pivotal point in developing a startup. This commitment can either be a catalyst in the company’s growth or become its ball and chain. If you’re considering building an in-house programming team you should pay even more attention to analyzing all the factors thoroughly than in the case of hiring a software house, because the latter is rather easily reversible, while the first… not as much.

Advantages:

  • Having the opportunity to work on and with your business every day, the team will gain a deeper understanding of how it operates and what are your precise goals.
  • You will have full and direct control over the entire team.
  • There’s no need to worry about communication issues, cultural differences, language barriers or time zones.
  • If you don’t like working remotely, the team can be available on-site.
  • It’s easier to watch over employees’ moods, understand and motivate them to do a better job.
  • The team will be a part of your company’s cultural ecosystem and therefore your communication and mutual understanding will improve.
  • Thanks to a full control over finances, you’ll know exactly where your money goes in terms of salaries and other business expenses connected to software development.

Disadvantages:

  • The developers’ salaries might be a huge business expense depending on where your company operates (eg. the US, Western Europe).
  • There are loads of hidden costs that you’ll have to bear on top of the salaries, such as equipment, an HR manager or agency, training, benefits (including social benefits like maternity/paternity and sick leave or paid holidays).
  • The labor law in your country and other constraints might make it very difficult to implement changes (such as scaling the team down) quickly. 
  • Strong labor unions (eg. in Sweden) could make maintaining an in-house team a costly and bothersome decision.
  • Even if you delegate managing the team to someone else in the company, there will always be issues and decisions demanding your attention and time.
  • Hiring and evaluating new employees might be hard, especially if you’re a fresh startup without any previous experience in that area and find it difficult to trust (or afford) an HR agency.
  • There will be flexibility issues once you need to make a short switch to eg. a different technology — the team might not have competencies to do the task and the task itself might be too small to justify hiring another specialist.
  • Dealing with the high turnover rate that characterises the IT job market is very frustrating and poses a lot of business challenges.
  • You’ll most likely need to maintain the team (or parts of it) even if there is temporarily nothing to do in the development area.
  • Once you build an in-house team you might be hesitant about checking out some of the other options for software development, which could be ultimately better for you.

Software House 

Hiring a software house to fulfill all the coding needs in your blockchain startup is a noteworthy alternative to building an in-house team. Working on a new business requires a lot of flexibility and outsourcing programming definitely brings that advantage. On the other hand, this solution lacks some benefits that come with an in-house team, therefore it’s good to consult your business plan and think about your long-term goals before making the final decision.

Advantages:

  • It has the possibility to invest enough time and energy into getting to know your business and researching the industry. 
  • You can choose a software house that lies in the same cultural and/or time zone but offers competitive pricing.
  • Able to hire specialists dedicated for a specific industry, (eg. cheminformatics and blockchain in our case).
  • No need to worry about all HR matters such as hiring, motivation, benefits etc.
  • You can pick and choose between a selection of specialists who best fit your needs.
  • No hidden costs: equipment, benefits, taxes etc. are all covered.
  • Flexibility: if you’ll need some work done outside the usual scope and main tech stack, a software house can easily find the right specialists (especially if it’s a member of a larger association such as SoDA).
  • You’ll have the ease of scaling the team up or down quickly according to your actual needs.
  • You’ll have the ability to be as little or as much involved in the project as you like.
  • There’s no need for you to have any previous experience with software development.
  • Even if you decide to end the cooperation with a software house, the transition will be much easier because the code will be written up to industry standards and the documentation well prepared.

Disadvantages:

  • You won’t have the team accessible onsite on an everyday basis (but they can make the trip from time to time, like we often do). 
  • Depending on the contract it might take some time before you’re able to modify the cooperation if you so wish.
  • Often no ability to make up for the time difference by covering all working hours.
  • You’ll be somewhat dependent on the company, if it eg. goes bankrupt you’ll need all your focus to replace it quickly.

What’s the right decision for your blockchain startup?

Obviously, we’re a tiny bit biased, but a lot of factors speak for the software house in case of a startup that operates within blockchain technology. Why’s that?

First of all, the number one thing a blockchain startup and a software house have in common is their fast pace. Both of these businesses are developing extremely quickly and following new technologies very closely, therefore they’re able to keep up with each other’s needs — you never know what technologies you’ll have to use next year.

Due to the nature of the blockchain industry, a startup’s partner also needs to have a lot of in-depth knowledge about it. Make sure your choice reflects that — it’s quite hard to find employees who specialize in such a narrow scope. When you leave that to a software house that operates within specific industries like we do, there’s one less thing for you to worry about.

On the other hand, if your business plan includes scaling your company quickly and you want different departments collaborating closely within its structure (eg. the legal one, which is pretty important in the blockchain industry) it might be a good decision to start creating your own development team.

Actually, a common occurrence for a blockchain startup is to have its own small technical team (or at least a CTO) from the get go. In that case, a partnership with a software house can be an effortless way to extend it on a need-to-have basis in order to avoid all the costs and risks that come with scaling up an inhouse team. We’ve been working in that model with a few Clients and it’s been very advantageous for them.

Final verdict

Hopefully the above list helps you make the right decision. It’s up to you (but we’d be glad to help — trying hard to stay objective :)) to analyze your particular situation and take into account all the parameters. Make sure to think in advance — oftentimes it’s much better in the long run to invest in a cooperation that will last for years and have a true impact on your direction business’ direction.