Skip to main content
Cardano NFT-marketplace

The First NFT-marketplace on Cardano

5 people
in the team
5 month
of work

Designed and developed in collaboration with IOHK, a decentralized application on the Plutus platform. The created DApp is one of the first NFT marketplaces on Cardano.

See the case

Who should be involved in the development of an MVP startup: a freelancer, an agency or hired employees?

galaxy

As we often work with startup entrepreneurs, we notice that most of them face the challenge of building a technical team to develop an MVP. And, it remains unclear how to do so in the best way. You can hire a staff, issue tasks to freelancers, or outsource the development process completely. But what would be better?

There is no one perfect solution. Every approach has advantages and disadvantages. In one case, you will have to spend more money. Another will require a deadline extension, and finally, sometimes you might sacrifice the overall quality of the project.

In order to  find the best approach to building a technical team, I'll describe what you should pay attention to. You need to understand what problems you will face in advance, especially if you don’t have a background in IT.

In this article, I will not discuss the possibility of NoCode or LowCode development for testing business hypotheses. Also, if you already work with an experienced CTO, this article is unlikely to be of assistance to you.

I'd like to discuss what steps entrepreneurs should take when they have already tested hypotheses, developed an initial business model, and decided to create a full-fledged service for further scaling but don't know where to turn for assistance.

Inhouse technical department

If you decide to create your own technical department, keep in mind that finding IT specialists is currently one of the most challenging tasks in the HR market.  It is expensive, time-consuming and difficult. An in-house team is necessary if you are planning a long-term project that requires months of development and the involvement of various specialists. In other cases, it's simply a waste of time and money.

Advantages

  • Avoiding reliance on a single contractor.  When a startup establishes a partnership with an outsourcing company, it becomes dependent on that company. There is a risk that the executor may change the conditions or will be unable to maintain the required level when scaling the project. . Finally, the outsourcing team may simple shut down, while your in-house team members are unlikely to leave all at once.
  • High engagement. If you recruit people interested in startup idea and who enjoy the team spirit, they will potentially be willing to work hard and be productive. .  Especially if in the future they have the opportunity to receive not just a salary, but company shares.  Such a level of engagement should not be expected from freelancers or outsourcing companies.

Disadvantages

  • Heavy expenses. If we compare the expenditures on an outsourced developer and payroll per staff member, the last one seems to be a less expensive option. But don't forget to add employee taxes, pension and insurance payments, office rent,  equipment and support staff expenses, such as managers, as well as the costs that fall on you as an employer – not everything will be so straightforward.
  • High team engagement. You will probably have to hire a good HR manager  or maintain team spirit and motivation by yourself. You may need to budget for training costs, corporate events and bonuses. These expenses also need to be considered.
  • Long hiring cycle. As a rule, it takes 1-2 months to hire an experienced middle developer. For senior level and above, the period extends for several weeks. It’s easier to recruit juniors, but they need to be trained, which also takes time and money.
  • Employees can get sick or quit. It's a big challenge for a startup. You spent two months looking for someone, three months bringing them up to speed, and now you have to do it all over again. Turnover is a fairly acute issue; more than 57% of developers are not actively seeking jobs but are willing to consider incoming offers.
  • Risk of deadline overdues and extra expenses. Employees may incorrectly estimate the deadline, forcing you to wait an extra month or two, while no one has canceled the salary. On the other hand, the outsourcing team can also extend the project’s timeline, but the risks will be distributed differently. You can also include fines for missing deadlines in the contract, or share the risk of overpayment with the contractor.
  • Downtime will have to be compensated for. Let’s consider a scenario where you must negotiate the project's future development with the investor; even if development stops, salaries must still be paid. A technical team’s downtime, even for a week, is quite expensive for a company.
  • Micromanagement. Be prepared to independently manage the team, assign tasks, review their work, and handle any issues that may come up. Alternatively, hire a competent CTO to whom you can delegate these responsibilities.

I recommend a startup to hire its own team for building an MVP when the startup founder is aware that the high costs and deep involvement in the technical process will be profitable. Otherwise, it is better to delegate the challenges of recruitment, motivation and IT specialists training to the contractor.

Roman Shtih
CEO

Freelancers

I see two reasons why you should hire freelancers: you want to save money or you require one-time assistance from a specialist in a specific technology. However, you must be able to work with freelancers, which entails having processes in place for seeking, recruiting, assigning tasks and monitoring their completion. You must consider the dangers of missing deadlines or the contractor simply disappearing. A freelancer’s ability to rapidly grasp a business task and devise a solution that works for everyone is rather uncommon.

On the other hand, if you manage to find a decent and competent freelancer, you can save a lot of money - up to 60% of expenses compared to a full-time specialist, according to numerous sources.  If there are many tasks, it can be a significant amount of money.

Advantages

  • Saving.  Less taxes, you can draw up an agreement either with an individual entrepreneur or self-employed person. There are no fees, office or working environment expenses. And it is usually cheaper than an outsourced team.
  • You can complete small occasional tasks quickly. Find a specialist, sign a contract and solve the problem.

Disadvantages

  • Many risks. Overdue deadlines, a missing specialist along with an advance payment – all these are market realities.
  • Difficulty with teamwork.  For tasks that require collaboration, it is difficult to find a freelancer — such specialists often prefer to work independently. Although this is not a rule, but rather an observation – there are probably many team players, I just haven’t met them.
  • You are in charge of management. You will have to spend time and energy on creating tasks, setting up and monitoring processes. A freelancer who works well in a team and is an excellent manager quickly turns into an outsource contractor.
  • Not enough time for yourself. Unlike a full-time employee, a freelancer will not wait for tasks. There is, of course, no need to pay a freelance specialist for downtime. However, if a task is available, a freelancer may decline because of  another project. It is standard business procedure. 

Working with freelancers requires a unique approach to processes that includes strict contractor selection and validation. I can see how someone with great technical and managerial skills would do this. If you are a startup and have not previously worked effectively with freelancers, it is best to avoid risks and deal with a company that has defined procedures, a written and transparent contract, and competent supervision. Alternatively, be prepared to take risks.

Full outsourcing

As the CEO of a development studio, I have to be honest: while studios might be a terrific option, they also come with their own set of challenges. If you want to work with one, you must be willing to take some risks.

Advantages

  • A full team. You don’t need to hire a lot of specialists, check their competencies, or wait for the team to work together. With outsourcing, you get a team and a project manager who knows his team and understands how best to organize the work.
  • There are no extra team expenses. The working environment, renting an office, purchasing equipment, keeping motivation, and developing staff are all headaches for an outsourced company, but you receive progress without these hassles and costs.
  • Quick start. Of course, most companies have a pre-sale stage. However, all of them try to reduce it. It is in the company's best interest to figure out the requirements, analyze, negotiate and get started quickly. It is possible that one week is all that is required to begin development. For instance, our team can onboard a project in three days.
  • You can increase the number of tasks. As a rule, outsourcing teams have a reallocation resources mechanism. If necessary, they involve it in your project. It is a flexible operating system. If there are many tasks, they engage a required amount of specialists. In case of fewer tasks, they assign developers to other projects.
  • You can transfer all or part of the risk to the contractor.  Reliable companies are interested in negotiating on the scope of payment for their services and the completion dates in advance, with all the intricacies. You will not have to pay for an increase in deadlines if the contractor's manager made an error in estimating them, while the exact amount is written in the contract as agreed depending on the situation. However, it is possible to redistribute additional costs between you and the contractor.

Disadvantages

  • You need money. High-quality outsourcing development cannot be cheap. Sometimes the costs of a highly-skilled team are not only comparable but more expensive than full-time employees. If you're kickstarting a business in Europe or the US, you might consider partnering with agencies from Asia, Eastern Europe, South America, or Africa to cut costs. But keep in mind that even in these regions, experienced and reliable teams charge a lot of money.
  • Less control and micromanagement. It is preferable to hire your own staff if you need to delve into every element of development and influence the processes in the team. The studio is likely to have its own techniques, approaches, and procedures so interference can lead to delays and misunderstanding. On the other hand, this saves you a lot of trouble because the executor is in charge of the entire procedure.
  • Dependence on a contractor. If the entire project is handled by a single outsourcing team, it will be tough to replace it fast because new developers will require time to understand the project and how things work. In general, if you choose to outsource, keep in mind that you may become dependent on the staff.
  • It takes time to find a reliable studio. Nowadays, there are several thousands development companies operating on the CIS market. At first glance, they may not differ from each other, but it takes time to find proper specialists. However, it is still faster in comparison to staff recruitment.

It seems to me that you should go to an outsourcing team if you have the budget and want to get a quick and high-quality result without worrying about the details and nuances, and simply transfer everything to the contractor.

An outsourcing team is appropriate for those who wish to delegate some of the risks to the contractor. Yes, you will need to devote extra time formulating business tasks and the project's approval. However, the contract can include a precise time frame for project implementation – if the agency makes a mistake in calculating the time frame, this is their problem and extra charges. When you hire an in-house team, you will be responsible for such errors.

How to choose an outsourcing team for a startup

Certainly, the easiest option is to find a team that has completed a similar project for people you know, and they are satisfied with the results. If there are none, I advise you to pay attention to the following details:

  • Find out if they have any experience dealing with startups. If so, they are already aware that they must be adaptable and recognize that the direction of development may shift following the next round of hypothesis testing.
  • It's great if there are similar projects in their portfolio; not necessarily in the same niche but same technological format. For example, if you are creating an analytics service, it is advisable to search for an outsourced team that has previously dealt with data visualization, and specializes in non-trivial front-end.
  • Talk to contractors. Analyze how contractors justify payment methods, how they contain risks, whether they are transparent in communication, and how they present the offer.
  • Take note of the combination of the team's work format and your needs. For example, if it is critical for you to call a manager, but in the studio they communicate only via chats, it is better to look for other alternatives.

Look at the developers' ratings, analyze Google results and any other ways available to verify expertise. Make a checklist of requirements and compare it with all potential contractors.

An important note. I feel that a typical outsourcing team will always be more expensive than maintaining your own staff. Even after accounting for personnel, office, and equipment costs, professional, high-quality, and skilled outsourcing is likely to be more expensive. However, if you have an extremely tight timeline to develop an MVP, and you desire a quick and high-quality outcome, this option may be more beneficial.

Roman Shtih
CEO

Because establishing an in-house development team entails more than just allocating funds for salaries. You'll have to spend a lot of time looking for professionals, waiting for the team to collaborate, allocating resources to process creation, studying, and working a lot. Outsourcing is, of course, more expensive in terms of money, but it is far less expensive in terms of stress and time.

Finally, what should you do

If you come from the IT world, you already know everything. If you lack technical expertise, simply use an outsourcing team. Don't even think about building your own team at first. In the end, it will be more expensive, complicated, and harmful for the project than working with an agency.

More interesting articles

zksync
Hot
rwa
New
anonymus
New
Zero-knowledge proof explained and 2024 Trends

Yevgeniy Biktimirov

Venture Analyst

Articles

ethereum
web3
dApps
cpay
Featured story
stock market chart
Featured story
planets
fundraising
Featured story
cto
wallet
Account Abstraction: A Tool Against Gas Fees in Your dApp

Nico Bordunenko

Project manager at MetaLamp

Articles

ethereum
web3
tokens
Featured story
rocketcomputer
Featured story
How to create a design for a startup MVP in 7 days

Julia Cherepanova

Head of Design Office

Articles

startup
MVP
design
crypto wallets
Featured story
speed up development
myths
Featured story
Myths about Blockchain Product Development

Nico Bordunenko

Project manager at MetaLamp

Articles

web3
dApps
startup
mvp launching rocket
Featured story
Who should be hired on the team to launch an MVP?

Alexey Sukharev

HEAD OF Sales DEPARTMENT

Articles

business
startup
MVP
galaxy
Featured story
magazine
Top 6 Trends in Crypto Apps 2023

Roman Shtih

CEO Metalamp

Articles

web3
dApps
cryptocoffee
investments
investors
squares
The first NFT marketplace on Cardano

Stanislav Zhdanovich

Haskell developer

Articles

cardano
web3
NFT
stair
bridge
abstraction
How we use our own training program to hire Plutus engineers

Svetlana Dulceva

The Education Program Supervisor

Articles

education
cardano
web3
mountains
computer in space
A perfect HR: why are IT companies happy with our junior developers?

Svetlana Dulceva

The Education Program Supervisor

Articles

education
web2
business
salary
IT developer
cardano
chains
abstraction
salary
Featured story
rocket
a man with books
Featured story