How we increased the speed of application prototyping by 40%
Reading will take
Date of publication
February 17, 2023
Many times we had clients come to us who wanted to test their product hypothesis or quickly make a product MVP. When it came to agreeing on a budget and deadlines, many clients' expectations were not met. So many wanted to make a prototype faster and cheaper. But not every product works that way, so we set a goal to find the best way to develop an MVP application.
When we started thinking about possible options, we immediately thought of various "boxed" CMS - WordPress, Drupal, Joomla, 1C Bitrix, and so on. Using such solutions, as a rule, reduces the cost and timing of development. But there are tangible drawbacks: they are rarely updated, have a number of limitations, problems with security and scalability. These CMS are excellent technologies but they are not suitable for our type of tasks. From our experience, we can also say that the introduction of such solutions can, on the contrary, increase development costs: you will need to hire specialists, buy licenses. And what is more important, further extensions of MVP can cause difficulties. Then we started to look for other solutions. It was important for us to make high-quality applications, which would be easily scalable and maintainable. Accordingly, we wanted to make MVP immediately on modern technologies. Our solution was to use the JAMstack architectural approach. In simple words, this approach implies complete separation of business logic and client applications. And what is much more important, there are already many ready-made solutions for various tasks.
Briefly about the components of JAMstack. The most important component is the business logic layer, essentially the backend. The basis of this layer is a headless CMS. Headless CMS is an easy way to create an application backend. And in some cases you do not even need to write code - it is enough to generate a project, and everything else can be done in an easy and intuitive interface. Such a backend can be used for all the client applications in your ecosystem - web, mobile, desktop and so on. One of the most popular headless CMS solutions, in our opinion, are Strapi and Contentful. Both solutions have both paid and free pricing, are scalable and suitable for creating server-side logic of varying complexity. In order to develop a prototype application, as a rule, the free pricing is enough. This reduces the cost of the product even more, because there is no need to buy a license for the CMS The full list of headless CMS can be found at https://jamstack. org/headless-cms/. The above solutions are enough to cover most of the tasks of application prototyping.nIn summary it turns out that using any headless solution, the task is reduced to the development of a client application. And there are some advantages in this case too. Suppose a client wants to MVP a web application but has plans to develop a mobile application. Using the proposed approach, creating a mobile application also comes down to only the development of the application's user interface, because the server part is already ready.n There are also a number of ready and simple solutions for client application development, similar to Tilda, but we'll talk about that another time.nIt is worth mentioning the disadvantages of this approach. Using headless CMS is suitable for quick creation of MVPs with a small amount of data. But as the amount of data and active users grows, it can cause problems with performance and various integrations. Especially when it comes to software for which there are no built-in plugins. That's why we recommend to use more robust stack - Java, Python, Node. js
Now to the numbers. Switching to JAMstack and headless CMS allowed us to reduce the cost of prototype development by 40-50%. As a pleasant bonus, we were able to relieve our backend team of short-term projects and focus their efforts on more significant projects.But more importantly, we found a way to create small applications on a widely used stack. With this approach, we can almost instantly move from the prototype stage to developing the full version of the application. The JAMstack approach is a good solution for prototyping. But if the functionality of the application grows and the load increases, we recommend rewriting the server part to more scalable and customizable solutions.
We are ready to chat with you on any topic. Fill out the form and we will contact you shortly.
Let's have a call?Select date and time