Some weeks ago Y Combinator released a video where Michael Seibel talks about the challenges startups face when they choose to outsource development of their initial product.
What Michael says is spot-on. It’s difficult to disagree with any of the concerns he mentions. He talks about speed and cost of development, skeptical investors, throwing away the code, being trapped in the illusion of progress, and the importance of iterating quickly. (Here is the link, if you haven’t seen the video.)
In any case, the reality is that you might be faced with a decision to work with a dev shop. So let’s have a look at how you should structure such partnership to increase the likelihood of success.
Early days of a startup
Everyone who tried to build a tech startup at least once knows how difficult it is to “make something people want” (YC slogan) and how essential the early days of startup are. Whatever you do, you need to do it fast and learn constantly. There is plenty of room for mistakes, but no space for stagnation. Growth is what defines startups.
In a perfect world, you and your co-founder have complementary skills and you can deliver the first version of the product. You probably don’t need anyone’s help as you can do most stuff on your own. You already know how to build a piece of software, now you just need to go out and talk to your users.
The situation is “slightly” different if you have a lot of industry know-how but you lack skills to code. Finding a technical co-founder might be the best possible option, but it may never happen, or if you are lucky, take months. Take a look at other YC videos where they talk about searching for a co-founder – how crucial it is to find the right person, and how risky if you found the wrong one. Plenty of startups fell apart because of a misalignment between founders. Most probably that’s the moment when you start asking yourself:
Should I Use a Dev Shop?
If you think of a dev shop as a way to keep your costs low, in most cases this will not work. Michael rightly notices that low cost = high development speed, not low rates. On the other hand, high development speed is not possible if you don’t have anyone to code.
The question then is if you can find a dev shop with the same mindset, who will become your partner and will care about your success as much as you do.
Here are 3 things that will help you answer this question.
#1 Engineering mindset
In the first place, check if the company has the right engineering mindset. Speed of development is probably one of the most important things you should pay attention to. In the early days, you are going to make a lot of mistakes, and face smaller or bigger product flops. That’s the beauty of learning. And the faster you make those mistakes, the less they will cost you.
Let’s say you want to build a mobile app – you find your target group, talk to them, and you list all stunning functionalities the app should have. Now, search for a company that will help you break your scope into smaller chunks and tell you what can be done within the next 6-8 weeks. Explain to them the problem you are trying to solve with your app and business value you are trying to create. Let them come back to you with ideas for achieving it.
When you are still looking for your product-market fit and you’re focused on quick iterations, you are going to experiment a lot, test hypotheses and as a result, create a lot of waste and needless code. Your team needs to understand that you haven’t figured everything out yet, and some parts of their code might be thrown away. Look for a team that understands this reality and can propose multiple ways to solve your engineering challenges. You want to work with people who can find the right balance between engineering perfection and business value depending on the situation.
#2 Team’s Motivation
Another challenge while working with external companies is that they might have different goals than you. They might not care if your product succeeds in the long-term but instead be interested in a steady revenue stream. Finding the right people for your team, someone who believes in your company and identifies with your mission and values is extremely crucial.
You don’t want to hire software developers that will do whatever you tell them to do. You want people who will understand your business, ask difficult questions, and spot the gaps in your way of thinking. Don’t be afraid to be challenged. Sooner or later you will probably face those issues anyway. You need to find a team that will be extremely motivated and dedicated. They shouldn’t treat you as another project, but a journey they want to be part of.
Once you found a partner with whom you are fully aligned, don’t be afraid to incentivize them – talk about equity deal, sharing business risks, or even better contract terms. You can structure the compensation either based on time & material model, or monthly retainer. That way you’ll be able to predict monthly costs, just like you would any other team member’s salary. This will help you build a successful long-term partnership and make it easier to have investors buy-in.
#3 Hidden Value
When you go to the dentist, you don’t pay for the time he or she spends fixing your teeth. You pay for their skills and experience. With doctors, you never want to find the cheapest one but the best one. Apply the same rule when you search for a dev shop. Don’t compare hourly rates, compare the value/cost ratio.
Check if the company you are working with has relevant experience, skills, and the additional value they can offer you. Are they able to support you in the whole product development process? Do they have the know-how that might help you with your business? What other startups do they have in their portfolio? Have they ever developed a startup or built a product from scratch?
If they never burned their money on building irrelevant stuff, they might not understand why iterating quickly is so crucial, and that no matter how many dollars you just raised from your angel round, cash is a scarce resource. That’s why the time to market is so important. You need to find people who are not afraid to get their hands dirty to help you move fast.
There is no silver bullet
Startups are not all the same, though. They don’t succeed in the same way. And each of them tells its own story. So do dev shops. Or tech agencies. Or software companies. Or however, you want to call them. Working with an external partner might not be the best scenario for you, keep it in mind.
Michael Seibel fairly spotlights all bumps you might encounter on your road to a successful relationship. But most of the startup roads are bumpy and full of obstacles no matter what you do. This doesn’t mean you are not able to find a world-class dev shop, avoid future troubles with finding the right talents and gain a lot from their expertise and know-how.
Already worked with a dev shop? What’s your take on that?
We’re Tooploox. We love working with startups and consider ourselves a startup. We are one of the fastest growing companies in Europe (FT 1000) and one of the most recognized tech agencies in the field of Artificial Intelligence. We helped hundreds of clients, including startups that went through Y Combinator, and we believe our focus on long-term partnerships is a key to mutual success – our clients’ and ours.
This post was written by joint efforts of Paweł Sołyga and Łukasz Siemaszko.