People usually ask me how to build a dedicated software development team in order to create an MVP. Usually, they are looking to hire a technical co-founder. Given a general lack of available engineers in Silicon Valley, it’s now the most competitive market for hiring software engineers. Startups have to keep offering perks and high salaries in order to attract the very best. So, It is natural that founders struggle to grow an engineering team.
How to build a dedicated software development team (Locally or distributed)
It’s great to have everyone in the same place and in an ideal world, we would. But If you focus on finding loval talent it sort of limits the pool of people that you can look into. The issue with distributed teams is communication. Now with the new tools, working remotely becomes easier.
Check Why work doesn’t happen at work TED talk that supports remote work. You need to work with people that can handle not being in an office. This excludes juniors and inexperienced employees since the former needs support and the latter needs close supervision. You need to find people who are mature can do a good job owning tasks, following up and being proactive. In summary, they need to be self-motivated and self-driven. Also, a yearly meeting helps people bond and work better.
The way we approach this issue is with a mix of both: engineers working locally in Mexico and product managers working locally with customers and users. I believe this way we get the best of both worlds. Engineers can interact, support each other, do pair programming and share time outside the office. While Product Managers can work closely with users and understand the problems the software product is trying to solve. And since the team in Mexico is 4 hours away by plane we can meet every other month.
in-house or outsource
I have heard both sides of the story. There is a false sense of security in having an in-house team. Managers think it will be a good investment in the long term but I’ve experienced it otherwise. Most engineers jump jobs in 8 months, taking the knowledge with them. I find the low level of long-term commitment. Usually, stocks help minimize this issue. Also, they prefer an in-house team so that they can supervise and troubleshoot all aspects of the process. On the other hand, I’ve heard horror stories of bad experiences when working with outsourcing companies. Lack of commitment, quality and control. You don’t know what’s going on until it’s already too late and you’ve missed the deadlines. Also, there is the issue of lost knowledge in transfer.
We work with the technical co-founders to share and document everything we build. Furthermore, we work on building a long-term relationship. We have been involved in different projects from 1 and up to 4 years. We believe in building a sustainable process where the engineering team can find their its pace so that it can focus on improving the process. This approach allows us to build well-designed features, provide accurate estimates and align due dates with milestones. We can deliver predictably since the technical co-founders are involved in every step of the process we both learn how to run a sustainable project. It’s an amazingly unique experience with each team. I have been doing it for almost 10 years, and I always learn something new. I’m proud to say that I learned how to build a dedicated software development team through all this experiences.
onshore or offshore
Some offshore companies have issues with cultural differences and time zones. Can an engineer in Mumbai understand the experience you are trying to provide? Do they fully understand the problems you are trying to solve? Also, working with a timezone difference means delays between sending a request, providing and giving feedback. On the other hand, onshore teams have a good understanding of the experience you are trying to provide but the premium costs make it prohibitive for most startups.
Our approach is a mix of both. We work in the same timezone to avoid any communication delays. Our team is soaked in American culture, some of us even lived in the US and moved back to Mexico. And every month we go on a business trip at least once. I think having the best of both worlds is what allows us to bring an exceptional team that can deliver high-quality software on time.
Choosing what kind of team to work with is critical to the success of your startup. There are plenty of things that could go wrong: slow time to market, communication issues, testing the wrong things, and many more. We specialize in building the technical team, So you can focus on Customer and product development. You can leverage working with mature engineers which in my 10 years of experience leading means you can launch the software product faster and better.
If you’d like to learn more about dedicated software development teams or need support, please send your doubts or requirements :D!