"How to find the right tech stack for your MVP". That's the topic that we, as a team, have decided to cover today. So, how? Man, I don't know. Simple as that. That's too wide of a question for such a narrow answer. You visit an electronics store and ask "what TV should I buy?", and the salesman points to a model you've never heard of and says: "this one". Sounds kind of dumb, doesn't it? If that's the answer you hoping for, I'm not gonna give it to you. An experienced salesman would ask questions:
"Are you planning to watch movies?"
"What kind of movies?"
"Is it for gaming?"
"What's the size of the room?"
"What's your budget?"
"Do you have a family?"
"What's the name of your cat?"
"What's your social security number?"
"What have I got in my pocket?" (a LoTR reference)
Then, if you're lucky, the salesman will point to a range of TV's, all covering the list of needs you've outlined. That's the approach.
Oh wait, I think I'm onto something here. I'm gonna do the classic switcharoo and ask you the questions instead. This way, you will tell me what kind of tech stack you should choose for your MVP.
Only today – this is a tech stack store and I am your salesman.
Disclaimer: the recommendations in this article are my personal views, beliefs and thoughts on how to choose a tech stack for a project. In other words, I’m just doing the educated blah-blah here. If something doesn’t work out, don’t come to my house with pitchforks please.
When speaking of budget it all comes down to the size of the team you can afford (and the complexity/novelty of the programming language, but that's a topic for another discussion). Robust, universal solutions can be used to create working prototypes even with the help of one person. But they often don't pass the test of time, as in, if one day you decide to scale your product, you'll have to start over. Larger teams can help you build an MVP using frameworks that allow for dynamic pivoting, hypothesis testing and a healthy, lean approach to development.
If you're on a budget, use:
If you're sitting on unlimited resources, use:
Don't say yesterday. Normally, the development time of an MVP takes from around a couple of months to one year. If you're in a rush, invest solely in frameworks with extensive documentation and support system. Your developers will thank you. If time is not much of a factor (which I don't think is the case), being on the edge of technology and choosing the newest, most innovative stacks is... acceptable.
If you're launching tomorrow, use:
If you're launching... sometime in the future, use:
Is it to gather user feedback? Is it to grow your initial user base? Is it to have something tangible to show your investors? First two options require for a more flexible solution, while for the last one, a simple, robust library might be enough. In other words, you basically have to decide if you're building a V1 of your product or just a test prototype.
If you're building a V1 of your product, use:
If you're just creating a test prototype, use:
Another fundamental question is – are you launching a web, iOS and Android versions of your MVP or simply building a web app? Depending on the goals you are pursuing with your MVP, you might need to opt for a newer, cross-platform framework or a more simple, well-established stack to test your hypothesis.
If you're launching a cross-platform MVP, use:
If you're launching a web app, use:
Do you have 1 developer in your team, or you already have a nice team of backend and frontend developers in place? For example, if you're an army of one, I might go as far as recommending you to get a cookie cutter solution (a somewhat similar, white-labeled product similar to yours) and slightly modifying it to fit your needs, and if you have a small team of developers, again, opting for the LAMP stack might be a good investment. Consider the following options:
If your team is small, use
If your team is large, use:
I hope things make a bit more sense now!
If so, at Match.dev we can connect you with top talent, quickly and affordably. And if you're still unsure which stack to choose – our devs will gladly help you figure it out! Keep in mind, you're not outsourcing a dev – you're getting a full-fledged team member who seamlessly integrates into your project management ecosystem and works in line with your product strategy. Drop us a line and let us help you find the right developers! firstname.lastname@example.org