Image Description

What is the best stack for a start-up?


A question for a million dollars and every single developer has a different solution. How many times have you wondered the same thing for the project you are working on? Or perhaps you are a business looking for a dev team to implement an idea?

Let’s discuss both scenarios.

Perhaps it will be much easier to answer the first question. It kind of depends if you are a front end dev or a back end.

I really love the idea of software engineering. You should be trying to be that, not just domain specific, but let’s examine the scenarios.

My idea is simple - you use what you are used to already.


Front end devs


If you are a front end devs, you already know what you will be using in the front end. Don’t use React, just because that is the stack most start-ups start with.

If you are an Angular dev, do it with Angular. Don’t spend time learning a framework, just because start-ups start with React.

I have tried a few products myself and although nothing made it, the reason was not the tech.

I considered myself a front end dev most of the time and initially I started with mocking the data and the information.

That was a good idea, because I had a clear vision when I started to implement the logic in the back end.

So mock first, implement later.

And the back end - you guessed it - Express.js is your best bet here. You know JavaScript, don’t waste time on learning .NET, because it’s a better choice for the app. Do it now and change if necessary later.

I have a friend who most of the time considered himself with the back end title. I will share his experience as well.


Back end devs


He is a great back end dev, but didn’t know JavaScript. The best approach we managed to find is to go with React. Specifically Next.js.

React is relatively simple and as a UI library is perfect for what he wanted to do. It had some specifics of course, but for simpler apps, it’s a great choice.

The resources for React are also way too many compared to Vue and Angular. And going in that direction is better, if you are not just interested in learning the front end, but actually trying to create a product.

Go with the flow!

Every backend aspect you can cover, do it! Use the stack you are familiar with and you can’t make a mistake that way!

You are not here to learn anything new, but to make money and market yourself!


What about companies?


This is the question that actually divides people in my opinion. Is there a “correct” way of doing things?

The answer “it depends” is both correct and wrong at the same time.

I think it depends on the shipping and the long vision of the company. If the idea is to ship fast and make some money with venture capital, maybe React is the better choice. The reason?

You have plenty of React developers and so many libraries that can help you with that. React is a pretty popular choice.

Angular needs more time to ship and needs more experienced developers. But it is the more solid choice in my opinion.

Every Angular project looks and feels as every other Angular project. Why is that? Because it requires good practices and it is well matured and demanding. You are going to have a solid environment to build upon.

Every other framework out there is a good choice, if you already have the devs for it. And every good dev is going to make it work for the project. Not the other way around.

Regarding the backend, it is more difficult to give a straight answer. I would propose following the JavaScript ecosystem. Sharing a code is good for the initial phase. You can change the backend at a later point, if you find the need to do it.

JavaScript as a backend technology is mature already and there are a lot of developers out there. Choosing that as a stack is a great fit to ship fast and reliable code.

In my opinion, going with Angular and Nest is a perfect combo for a start.

Also looking for JavaScript developers in general and not just framework specific engineers is a better choice here. In every start up you need more generalized expertise.


Conclusion


No matter what you choose and pick, the harder part is not the code itself. You can make it work with every stack and every language.

What is harder is the marketing and the market fit.

Validating the product is probably a lot harder and essential. As developers we like to write a simple MVP and check the market later. That leads to many months that are simply wasted in most cases.

Validate first!

As a company, maybe validating the idea first and consulting a freelancer or an agency is the better choice. If you are a non tech founder, I strongly recommend you to check you local tech agencies and consult with them.

I assure you most of them know what to do and how to approach the software!

As always, take care and good luck!