Creating A Mobile Startup: Team And Advisors
Based on a keynote by MobiDev CEO Oleg Lola at Founder Institute.
Nobody wins success without a strong team. To say a bit more precise, software development for startups is never successful without a great team. Nothing happens without proper structuring, selecting, and building interactions. Since about a half of our clients are startups, we know the specificity of this work. We know how to build right interactions with the startup owner. We know the common pitfalls. All of this we'd like to share with you.
Most startups deal with remote teams, and it's a great, efficient way of building a startup. It worked for plenty of startups before, and it can work for you as well.
How do you define a team? It must be a group of people very close to you, people who you trust. Together with these people you can achieve and deliver, be it your soccer team or your startup team.
Your startup team are people who can implement your ideas. Every person in the team must deliver, be they your longtime friends or recently hired professionals. A startup is not merely based on fun (although it's quite a good place to have fun), it's the place where you build your product, where you sell, where you change the world. Everyone who is involved in your business, either your employees or partners or your wife, are a part of your team. You have a common goal – to create a product, to establish a company, to fulfill the needs of your customers. Together you are working to achieve these goals.
You start with a core team of one or more co-founders. You also might have advisors, investors and contractors in your team. Over time you grow, and more and more people are added to your team.
At the beginning you're small and you don't have a lot of resources. In order to grow you have to be wise with distributing the resources. You cannot afford having a big team. At the same you should take care of lots of important things: vision, product, sales, promotion, accounting and legal.
A very convenient way for startups to organize their business is hiring a remote team with contractors. In this way you can focus on your core business needs. Your core competence is understanding your client's needs and finding a way to satisfy them with the software you build, so you cannot delegate these in any case. The rest (accounting, promotion and product implementation) can be delegated to contractors who specialize in that.
The must have here is CEO, who can be accompanied by another co-founder: CTO, or co-CEO, or COO. The main point here is sales. If you don't want to sell, you shouldn't start a new business. There is no 'if you cannot sell', because we believe everyone can – or everyone can learn how to do that. A lonely CEO is also quite a widespread scenario.
How should you spread responsibilities inside the core team? Let's look at a startup canvas.
Advisors are smart people from your product niche. Typically they have either a business or technical experience and knowledge which can be highly important for you. It's great to involve advisors to your team; at the same time you cannot be sure that gurus will come and solve all the problems for you. They won't do it instead of you. They will give you advice; you are here to solve problems. In a rare case you might meet a senior entrepreneur who'd like to use their sales channel to spread your product. But you cannot count on that, and experience tells everyone to rely on themselves.
Investors are a combination of an angel and a devil. They give you money, they help—and later they come back for your soul. The money comes without a problem when the investor sees the value in you and your business. You must become valuable before going to the investors. You must create this value. They must see how they'll get the money back with you. Investors won't solve the problems instead of you either.
Freelancers. These are people who want to live on their own without taking too much responsibility. If they are in a good mood and know how to do it, you'll have a result. Otherwise your'll just lose your time and money.
Agencies. Solid agencies are a better option. Agencies provide services to help you with specific questions. It can be legal & accounting, marketing & promotion, or product development. According to our experience and the experience of the startups we work with, extending your product development team with an agency is a wise and efficient option. Especially if you have a limited budget for an MVP. You may delegate product implementation to an agency and focus on your core business.
1. Get a consultation before and during the collaboration.
Feedback on idea, suggestions on implementation, approximate estimates. Viability of the project on the emotional level. This doesn't spend your budget.
2. Use agency expertise and consider suggestions.
Get options, decide how they suit you, and choose.
3. Hire top people for the tasks.
Feel free to talk to team members. It's your team and you're going to work with these people. Be confident in them.
4. Agency is responsible for delivery.
Once the contract is signed, the agency has its own responsibility and liability. You provide money and availability to answer different questions. So demand results from them!
5. Let them guide you.
Software development is a complex area of knowledge. It's not necessary that you know everything. The agency is here to help you with processes and technologies. Ask for explanations if you want to understand what's happening behind the scenes.
Hire and fire on demand, fast. Scale up and down, fast. It's not easy to do with the internal team members whom you hired, and it's evil. But it's easy with an agency. You don't have the employer responsibility.
7. Share problems and ask for solutions.
Agency is interested in your success, so they will find some ways to help which you might have not even thought of.
1. Define your cost category.
Be reasonable. Don't participate in the lottery called 'the cheapest wins' (making a Facebook for $300). Buying a cheap car, you'll run into a lot of problems.
2. Get access to the key people in the agency.
Talk directly to chiefs, so they can feel you're an important client and treat you accordingly.
3. Good agency asks LOTS of meaningful questions.
Smart people ask relevant and thoughtful questions about your goals, about your customers and the product, because they want to help you achieve these goals. Questions about requirements and technical questions are asked. Questions should show the level of their understanding and involvement into the talk.
4. Get a dedicated person responsible for delivery.
Typically on the agency side it's a PM. Project manager helps you to keep things organized and manage the remote team. In a team you might have at least one developer, one QA, one designer. So it's easier to have a single point of contact. It's nice to brainstorm together. At the same time everything should be transparent so you could communicate also with each individual.
5. See and Feel proven track of records to discover the ability to deliver.
Talk to the people who made the portfolio projects, talk to the existing clients. How does it correspond to your product from technical and business perspectives?
6. The next point is critical for working with any team especially with the remote one – it's Communication!
а) Mutual understanding & talking the same language; b) time zone; c) culture and values; d) being easy to meet. Every point in the estimate must be explained and thus be understandable.
Rarely is a complex software product implemented without any issues. If you're informed about issues and risks straightforward and beforehand, then your product is in good hands.
Even if you choose a reliable agency, there are pitfalls you should be aware of.
1. Start with understanding your goals!
If you want to build a product fast and you know what you want – a remote team is the perfect choice. If you're looking to get the next round of investment, your local team members would typically increase company evaluation. Know your goals, share your goals.
2. Track the progress!
In order to make sure that your goals are achieved, see how smaller steps are made. Do it on the regular basis, ask for regular demos or reports. See the results with your own eyes.
3. Trust-control balance.
On the one hand you want to see the results and make sure the milestones are met. On the other hand it may end up in microcontrol, which would consume a lot of your time and distract the team from their tasks. So it's easier to let the team do their job and use smart tools which show you the real situation: code repository, task/bug trackers, agile boards, etc.
4. The worst thing in working with remote teams is assumptions.
Don't make any assumptions, question everything, ask how people understood you, ask about the complexity of the tasks, about ideas. In this way you'll manage your own and team members' expectations positively.
All in all, we wish you to work with reliable partners, find awesome team members and launch new great products! Feel free to contact us with any further questions – or if you are in search of a contractor agency.
December 17, 2014
A good software company is not just a contractor for a startup, but rather a partner. That's what MobiDev has always been. A... more →
November 13, 2014
You don't have to pack your future app with loads of features and make it skyrocket to fame. In fact, it can be so heavy with... more →
Many business people don't fully understand the complexity of a software development process. It's natural, since specialized... more →