Long story short: No. You don’t have to lose control of your product’s development if you bring in an outside team to develop it.
With the right tech partner on your side, one you can trust that continuously delivers on what you both agreed and committed to, you shouldn’t lose control of product development. However, you need a structured approach to finding that tech partner.
First of all, the true question you should be asking is not if you will lose control if you outsource product development. It rather should be: “How do I know if I am picking the right tech partner?” One that won’t derail the development of my product vision. One that will increase development speed without compromising on quality.
Let’s start from the beginning: So, you’re building a startup. You’ve detected an opportunity in the market, you’ve done your research thoroughly, and now have a vision on how to address and seize that opportunity. You might even have raised capital to start building your company. You are starting to idealize your product, you have some rough wireframes, and you are asking yourself if it’s a good idea to hire an outside team to help you build your product or build your own product team from the ground up. Whether you are already canvassing the market for the right outsourcing product development company or still feel inclined to build your own product team, here are some aspects you should consider:
Build a team vs. hiring one
There is a temptation at the beginning of every startup: immediately start hiring developers and building a technical team before you even have some sort of market validation or, at least, a proof of concept. We might be biased but, based on our experience, that is a huge pitfall. You probably want to keep focused on building an MVP (minimum viable product) so that you can validate your approach to the problem rather than dive right into the tech war of talent the world is experiencing. Additionally, to mitigate risk, you want an experienced team of developers that have done dozens of other products. You want a top-notch team that has a record of building and scaling best-in-class products. It might feel counterintuitive, but you get more guarantees during your start-up’s market validation stage by hiring an outside team to build your product than to start building your own team from scratch.
Having a tech co-founder
If you don’t have a background in technology, you probably are looking for, or maybe have already found, a technical co-founder or, at least, hired a CTO. Even a fractional CTO will make a big difference.
At Runtime Revolution, we believe this is one of the key aspects in picking the right tech partner to help you with product development. Many of the discussions around product development get too technical for a non-tech founder to understand. You want somebody on your side that can “talk the talk” and help your product development team “walk the walk”. You need someone with a strong technical background to be able to discuss software architecture and development plans. This is paramount in validating if your sourced team is ready, willing, and able to help you build your product vision. This validation has to happen in the very early stages of the hiring process when you’re starting to figure out if the company you are hiring to help you build your product is the right fit for you. The right company should be able to discuss technical aspects from the get-go.
Don’t hire yes men
If, during the first discussions you have with the product development company, they seem too eager to satisfy your requirements and demands, be very, very cautious. If, for example, you are committed to a tech stack, like Node.js, and all they say is “yes, of course”, even if they have no proven track record in that tech stack, then probably they are not the best fit for you. The best teams are specialized in a tech stack and you don’t want them to adapt to your requirements. In this example, it is best to look for another company that is an expert in what you want. Or, if you are willing to compromise on the tech stack, stick with what the company is good at.
Another example is if you think that you want a large team from the very early stages of the project. It is in the company’s best interest to tell you that they can do that because more people in a project translates into more money for the company — but then you will have to foot that bill. The truth is: at first, you don’t need a big team. You want a team that starts small, with three or four developers, and that scales with the needs of the product. An honest partner will tell you exactly that.
Also, for a team to add the most value, they should have a critical vision of the development process and not merely be blind executors of whatever you want. The team must have input on what is developed and, most importantly, how it is developed.
Agile is the way
If you decide to work with an outside development team, make sure they operate using the Agile methodology. Roughly speaking, the Agile methodology breaks a project into “digestible” iterations or sprints. Each sprint can last from 2 to 4 weeks. At the end of each sprint, the team must deliver a working iteration of the product — “working” being the operative word! Teams can decide on core features of the product and determine what the first iteration will be and if the effort is manageable within the sprint duration. At the end of each sprint, the team reviews results and thinks about what they can do to make the next iteration even better. This process goes on until the final delivery is ready. Or it may go on indefinitely for a product that is always evolving.
In the last 10 years or so, Agile has become the default framework for modern software development. It’s the most aligned, if you want to start with an MVP and grow from there. Being an iterative and incremental development approach, it makes it the ideal framework to operate for an early-stage startup. It ensures that a product has quality by having tests integrated through the development process, teams deliver frequently and rapidly which is key for the speed of a startup’s development, and its focus on solving the needs of real users to prevent building useless features.
In a nutshell, Agile is the best methodological approach you can have if you are creating a startup and want to improve your product quickly and according to users’ needs.
Communication is key
One way to prevent losing control of your product’s development is by having the team commit to daily scrums — they are a central part of the Agile methodology. Usually, a daily scrum is a brief 15–20 minute meeting (in-person or through video-conference) where everyone quickly gets to say what they are working on and if they’re facing any obstacles. Daily meetings between developers and you and/or your CTO make sure that there is total and constant alignment between everyone involved in the development process. This constant feedback loop prevents any sort of miscommunication or misunderstanding regarding the direction of your product’s development.
If you decide to hire an outsourced product development team, one that can be a true partner to your early-stage startup, we hope this article can serve as a guide. If you are interested in finding out if Runtime Revolution is the right fit for your startup, we believe we might have what it takes. Let’s talk and find out! ;)