How to choose your MVP's tech stack?

    • stunntech blog author image
    • Sasank Thaliyil

  • |
  • March 26, 2019

Now, all founders — both techies & non-tech founders want to start with an MVP for their startup. People know it is the best way to start building up to something without much risk. But then there are so many technical decisions to be made to build your minimum viable product. You just suddenly want to build something to show which is functional, neat and scalable from this version.

 

The developers/ dev team you work with usually suggests the technology they are experienced in as the preferred technology stack to build the project. But it’s important to have your tech stack decided which is best for building your concept. New programmers always try to choose the latest programming languages because it will be open source, faster, reusable and might have a lot of libraries which you can directly use. You need that new & popular technology which can be used to easily build something from scratch and scale from there.

 

Just think long-term even if you are building your MVP!

 

Most software product ideas start with a website/ web application. But what if you have a plan to build a mobile app interface also for the same purpose? Use React or Angular frameworks in the front-end which can be easily converted to a mobile app. Having a cross-platform tech stack allows you to lower costs, be updated about your tech stack and faster development. It is a highly scalable architecture you need to build thinking long-term, so you have to choose a framework which will be a modular architecture, easily configurable and can be scaled.

 

Breaking it down, a usual software/ SaaS product’s tech stack can be divided into 3:

1. Frontend Interface 

Usually, all the front-end technologies that we use today will be a single page architecture focused on loading only what’s needed for doing the current operation. That means if the user is playing with a dashboard in a modern saas tool, the application loads only the dashboard module which reduces a lot of server load and makes action results reflect quickly. That means the interface will be more dynamic and live, reducing the heaviness of the application. Javascript based frameworks such as Angular, React & Vue JS are commonly used to build dynamic & robust web interfaces. 

If you have a plan to build the mobile app interface to replicate the same, building it in Facebook’s React is a good option which helps to convert it later into a mobile React-Native app without much effort. 

Google Flutter is also a good option for building cross-platform apps but it's not very popular and support is not very good yet. 

 

2. Backend Server

In the backend, there is no much complexity to choose the tech stack. It should be very much compatible with your database, third-party libraries, functionalities such as live push notifications, payment gateways etc. 

If you are looking to build a data-heavy platform which has a lot of computations happening at the server side, Python & Ruby seems to be a good option these days. If it is an event-based app with continuous read-write-fetch from the database based on the events happening, NodeJS which takes asynchronous execution calls seems like a good option to build your backend server. Also, if you are using Angular/ React in the frontend, NodeJS makes it a complete Javascript stack which becomes easy to manage for your software development team.

 

3. Database & Storage

The database is one other main thing to select. The chosen database should also be scalable, secure and should cost you less read-write complexity, time & cost.

The first thing to choose on the database side is whether to follow a structured query like MySQL, Postgres etc or consider a NoSQL approach which doesn't need structured data and can store anything that you push. It is scalable, efficient and also causes very low data storage cost if implemented properly. MongoDB, Amazon’s DynamoDB are some examples of matured NoSQL based databases which are currently running on cloud-based saas applications. 

 

 

There are a lot of tech stacks to choose from, each brings up their own advantages & disadvantages. Some of them are good for certain projects but not for some other purpose. It is good to choose one that can be used to build the whole idea in your mind in a scalable way.

Let us discuss if you are looking to build an MVP and still thinking about what technology or programming language to choose!