home iconBlogChoosing a Technology Stack for Building Your Web Application in 2021
Choosing a Technology Stack for Building Your Web Application in 2021
Choosing a Technology Stack for Building Your Web Application in 2021
Ivan
Ivan
Project manager, full stack web developer
21 January 2021eye icon40
Ivan
Ivan
Project manager,
full stack web developer
1

This article will be useful for startups and businesses. If you are not friendly with web application structure we recommend to read about it here.

The web application is completely dependent on the end-user for the product.

Regardless of what kind of business you have, as a rule, many questions arise:

  • How many users will there be on the platform? (What server do you need)
  • How much server capacity do I need? (Will our server cope)
  • How much will the developers cost? (Will we fit into the budget)
  • Which programming languages ​​should you use? (Which is better from the point of view — price-quality-speed)
  • What technologies to use? (Which is better from the point of view — price-quality-speed)
  • How will choosing all of the above affect the overall development cost?

Difficult to answer right away isn’t it? Then how do you choose server, database and UI technologies?

Let’s try to solve these problems one by one.

How many users will there be on the platform?

It all comes down to money, if you cannot predict how much power you will need, then in case of a miscalculation, you will either pay for resources that are not used, or you will have performance problems.

Fortunately, there is a solution to this — use scalable services. These include Google Cloud, Amazon Web Services, Microsoft Azure and others.

These services provide the ability to scale your application by paying solely for the resources used. Plus, they support almost all programming languages.

This solves the performance issue. And at the start stage it will cost you almost nothing.

How much server capacity do I need?

It is best to always contact a technician to answer this question. It almost always depends on the logic of your product. If there is no such specialist, use scalable services from Google Cloud, Amazon and others. Most likely, at the start stage, the issue of performance will not affect you. However, the architecture of the project must take into account this possibility and it must be immediately announced to the developer.

How much will the developer cost? What programming language should I use?

Before hiring a developer, let’s decide on the programming language we will be using.
If you have a technical leader on your team, ask him what he prefers to use. Regardless of the choice, having experience, he will be able to implement your product and find specialists.

If there is no such person, the best option would be to choose the technology that is currently used by the greatest number of developers and which is most popular.
Send a development request to several companies or freelancers with good experience. Compare the answers and choose the most popular solution.

Advice from our side:
The biggest problem is when you have to pay for two different specialists to develop the server and client side. If they were using the same programming language, they could interchange each other or work together on one part of the program. It’s faster, cheaper and more reliable.
Node.js and Javascript successfully solve this problem. Both programming languages have the same syntax and therefore the same specialists can work with them.

Summary:

Technological stack that will be optimal in 2021 for web development:
The issue of predicted loads and performance is solved using a node.js server that runs in scalable cloud services.
Here, both a dedicated server and serverless option are suitable. We prefer to use serverless because this removes the problem of server administration from us and in practice shows more stable work.

Database. When using cloud services, it is accordingly better to use their databases. Amazon — Aurora DB, GCloud — Firestore.
If you need to use relational databases, MySql, PostgreSql are still good choices.

The client side is Javascript. Here you can give the developer a choice between popular libraries at his discretion (React.js, Angular, Vue.js, and others). All solutions of these technologies solve the same problem. It’s a matter of habit and convenience.

In total, the optimal application scheme that will suit most startups and companies is:

1