The way we build tech products is constantly evolving. Not just in the languages and architecture we use, but also in the way the teams themselves are constructed.
Micro teams are the latest example of that evolution.
15 years ago, there were a handful of internet companies in the world.
Mid to large companies would open up a floor in their HQ for the tech team. Then, they would simply fill the roles as needed.
Nowadays, however, that method of hiring developers is a lot harder.
Now new tech startups are popping up every day – around 137,000 to be precise.
This rapid increase in demand has left the ecosystem with a dramatic shortage of developers.
This means that finding top technical talent is not only more difficult; it’s more expensive if you do find them – especially in highly developed tech hubs such as London, California or Singapore.
That’s why many founders are turning to distributed micro teams for help. By expanding the search further afield, to a fully remote team, they’re:
- Increasing the talent pool available to them
- Able to find developers at a more reasonable price, for the same, high-quality work.
But what exactly is a micro team of software developers? And how can you leverage one to push your business to its next milestone?
Throughout this article, I will cover these questions, and more, including a structured process to help you set up your own team.
What is a Micro Team?
A micro team, as it says on the tin, is a small team usually consisting of three to four people.
Some micro teams can grow to as many as eight developers, but it doesn’t happen often.
“A micro team is a highly functioning elite team that delivers on time with high quality.”
But why do people turn to micro teams over large, legacy software development teams?
Why Are Micro Teams Popular?
There are several reasons why they have risen in popularity in recent years including increased productivity and flexibility.
The first reason, however, that makes entrepreneurs look for micro teams, is the developer landscape itself.
1. The Developer Landscape
The number one challenge in Tech these days is hiring developers locally. In fact, 61% of HR professionals believe it’s the biggest challenge of 2021.
The pure fact is, developers are in high demand. It’s become much more challenging to fill vacancies with high-quality talent.
Unless your brand, reputation and salaries are stellar (say Apple), you’ll be competing with dozens of contenders for the same few high-quality people. Who, by the way, stopped looking at LinkedIn messages long ago.
Therefore, it might make sense to consider having a few micro teams in other locations (especially if you already have a large team).
This is the exact strategy Datahouse took when their COO Peter Müller reached out to me.
They already had a solid development team at their HQ in Switzerland. However, they needed to augment that team to keep up with demand for their product.
Peter was struggling to find the right developers in Switzerland, so he decided to look further afield.
He looked to Lisbon due to its thriving tech ecosystem, and lower costs compared to his local market.
That’s when we started talking.
45 days after that initial conversation, the initial batch of developers began working with Datahouse. Fast-forward to today, and there has been zero staff turnover since the partnership began 3 years ago.
Augmenting a development team is not the only reason to look for a micro team.
Often, entrepreneurs will do this to find a solution that will enable an additional dev pipeline to be assembled. They want a team that’ll deliver on a specific roadmap for a new business vertical.
Other times, the goal is to rebuild the entirety of the existing project within a microservices architecture & with new technology.
2. Productivity Gains
Micro teams are a relatively new concept. The term mimics another software development concept – microservices.
Microservices architecture increases productivity by breaking up large development projects into independent modules within existing software (usually legacy monolithic structures).
Microservices allow you to keep adding important new features “on the go” without refactoring or rebuilding the central monolithic structure altogether.
Micro teams increase productivity in the same way.
Imagine you have an ageing, outdated platform that needs updating.
You could ask your internal team to refactor the central monolithic structure altogether.
This would solve your problem. However, it would be expensive. It will also take time and possibly affect the usability of your product for a limited time.
Alternatively, you externally source a micro team.
They’ll build only the new features with the latest and best-performing tech, on the side. They then link that to the central monolith via APIs.
This method is exactly what the most progressive tech companies, notably Paypal, did and keep doing to this day.
3. Flexibility & Engagement
Generally, a classic large team structure consists of separate teams with their own specific expertise. For example a separate backend team, frontend team DevOps team, etc.
These teams undergo lengthy meetings. They’re told what to code by the management team with little or no sense of why they’re building it.
This leaves the developers feeling like they have no ownership over what they’re building.
Conversely, a micro team is generally composed of full-stack people who’re well versed in the complete end-to-end development process.
They’re as keen to work on the database, frontend and backend as they are devising CI/CD strategies and DevOps tasks.
They not only know what they’re building but why they’re building it. They take full ownership and responsibility for the process. This means they require little to no external management.
There is a natural flat hierarchy within the team. They collaboratively distribute tasks to those who feel the most confident to fulfil them (or often most curious).
At the end of the day, some members work 80% backend and 20% DevOps. Others could be 50-50% frontend and backend. Or they could swap entirely within months if they deem it to be better for the project.
- Have the flexibility to assume the required roles based on the project’s needs.
- Know how the tasks they do affect the project as a whole – and take ownership over it.
Both of which result in higher quality work, delivered in a timely manner.
Now that I’ve explored the reasons why micro teams have become popular among both small and large companies, I want to look at how you can recruit one of your own.
How to Recruit a Micro Team
Step One: Define the Project
The first step to recruiting a micro team is to clearly outline the definition of the tech stack and the purpose/business model of the project. This applies to both entirely new projects, refactoring of an app or adding a new vertical to the project.
Imagine a bank’s tech team – busy working on the core product.
The leadership wants to add a simple and efficient insurance vertical that doesn’t exist yet digitally.
The problem – the tech team have a full plate and can’t facilitate this new feature.
Instead, the team can define this as a separate project – outlining its goals, potential hurdles and the timeframe in which should be delivered.
Once this has been outlined, the team can move on to step two: speaking to technical talent.
Step Two: Talk with Potential Stakeholders
Step two is to talk with a few potential first hires.
Typically you want to start with seasoned tech leads. You should look for someone who is excited by the challenge you face with your project.
It’s also vital that you find someone who aligns with the working culture of your business.
The first developer you hire in your micro team will be a key partner in deciding the composition of the rest of the team. It’s vital that you’re aligned on both the goals of the project and how you will work together on a day-to-day basis to make that happen.
Once you’ve found that initial technical partner, they will most likely suggest some of their contacts who may also be interested.
If they suggest, say, five people, you can assume that one or two may be available and very keen to pick up the banner and join your project.
In terms of location, it’s best to have people within the same time zone as you. It will make life a lot easier when it comes to fluid communication, as well as organising stand-ups and sprint meetings.
Even better is if you can hire people within the same area. For example, at Altar.io our teams are local and this helps create proximity.
That being said, if you can’t source top talent in your own country (like what happened with this company in Switzerland) I’d try to choose close geographies, within 2-3 hour differences at the most.
The software development landscape is ever-changing. Gone are the days of legacy, on-site only solutions.
Now the era of the small, flexible and distributed teams is in effect – both in terms of the software itself (microservices) and the people who implement it (micro-teams).
If you feel this is the right moment to set up a Micro team, why not drop me a message. I’m keen to understand your challenge and am here to help.