Freelance, Outsourcing or TaaS — the best cooperation model for software development

Antek Miłkowski
teonite
Published in
5 min readMar 13, 2019

This is blog post is intended to be a brief summary of most popular solutions in terms of the IT world. Let’s be clear — flexibility and agility are the key factors of success in today’s IT world. You either act swiftly and adapt or you start to fall behind. One of the main reasons of failures of IT projects are missing skills in the development team. Statistics do not look too bright, as

it is estimated that by 2020 there will be a shortage of almost 2M qualified ICT professionals all over the world.

Any of the following can happen pretty much at any time:

  • A sudden increase in workload (new projects)
  • An unexpected scope increase in development projects
  • Decreased workforce due to unpredicted occurrences
  • Need for rapid prototype
  • Radical speed up in development
  • Need for high quality and timely delivery
  • Need for particular skills

If you ever find yourself in a shortage of employees/skills, there are a few ways to fix the situation without having to spend lots of time and effort on recruitment process. Being in this particular situation, you can basically choose one of the following options.

FREELANCERS

A freelancer is defined as someone who does particular pieces of work for different organizations, rather than working all the time for a single organization.

So, you can look for individual contractors to try to find the talent you need. But very often you are going to need more than one person to fill the gap, and this is where the trouble begins. A group of freelancers is not a team, contrary to popular belief. So first you need to invest resources to actually make them into one. It will require managing them and overseeing their collaboration at the initial stages.

Also, there is no guarantee that those freelancers will actually bond and reach a status of a TEAM as in an article from 1965, psychologist Bruce Tuckman came up with 4 stages of development most teams follow on their path to peak performance. He described those as “forming, storming, norming, performing“ Without getting into too many details — every group aspiring to become a team has to go through all four stages and each stage poses unique risks and challenges for the forming team (and some of them never pass the storming stage). Failing to complete this route means lower performance and quality.

Additional risk occurs when you mix permanent employees with freelancers as they tend to have different work frame of mind and expectations.

Pros:

  • Affordability — on general freelancers generate less costs (and in general they take care of their own health care and other benefits)
  • Flexibility — you decide when and for how long you want to hire a freelancer
  • Availability — creating a network of freelancers allows you to instantly find the talent you need in the future

OUTSOURCING

To outsource means to get work done by making a contract with another company to do it, often in another country, rather than in your own company.

Outsourcing is one of the solutions, one that does not come without its disadvantages. There are many types of outsourcing, some may suit your needs better than others, but we’ll focus on those in a future blog post. With external vendors you basically trade lower costs of work for limiting your control over the people and processes. And if you cannot contact people working for you, you might end up losing even more resources.

An additional issue is the impact outsourcing has on your in-house employees — morale can decrease as they might feel threatened by the third party company.

Pros:

  • Lower labor costs
  • Increased speed (unfortunately sometimes at the cost of quality)
  • More management time freed

TEAM AS A SERVICE (TaaS)

This solution is basically a mix between outsourcing and hiring freelancers, giving you the best of both worlds. It allows for savings in time and resources, giving you the freedom to focus on your business goals.
We cannot stress that enough, creating a team is not as simple as just hiring a few freelancers or using outsourcing services. Becoming a “well-oiled” machine in terms of team building is a lengthy and challenging process. It takes patience, mutual understanding and respect. There is no place for ego or arrogance, so we tend to assess candidate’s character during the recruitment process and check if it matches our attitude and work ethics. Having done all that, you get much more than just a group of employees — you get a team.

Being able to work together, brainstorm and take criticism gracefully means that the team is mature enough to take on any challenge presented.

Pros:

  • The team comes with a Scrum Master/coach who takes care of recruiting, compensation and payroll
  • Direct personal interaction with every person in the team
  • Improved communication
  • Final decision on who joins the team is yours
  • No need to worry about project management, development environment, issue tracking or human resources
  • Seasoned team equals higher performance

SUMMARY

In TEONITE, we are a full fledged team. So, if you ever find yourself needing help, here we are — outstanding programmers, designers, testers, business analysts and data scientists ready to support you with an astoundingly wide range of skills. We tend to put a lot of emphasis on team building processes, as the people in TEONITE are the highest value.

Working in small teams (4–6 people), we are able to communicate with each other and utilize our broad experience in Big Data, Data Science, Business Intelligence, Machine Learning, Web solutions, and UI / UX to provide the highest quality, tailor-made software. We follow latest technology trends and put great emphasis on our development and acquiring knowledge.

Team as a Service is just one of the services we offer,
if you want to know more visit our website:
https://teonite.com/what-we-do.html
or feel free to contact me directly on Linkedin
https://www.linkedin.com/in/michalgryczka/

--

--