Want to know about good backend stack

Hey everyone, I am from India. I am currently working as a frontend developer in a company. It has been three months since I joined the company. I have always want to become a full stack dev or a backend dev. In my current role, I use ReactJS with Tailwind or Material UI for the frontend . I also has good knowledge in Express.js for the backend.

After one year, I am thinking of exploring job opportunities related to full stack or backend development. I have heard that Node.js as a backend technology might not offer as many opportunities. So, I am thinking of learning either Java Spring or .NET. But both of these are entirely new to me and would require a significant amount of time to master.

I would appreciate some guidance on whether I should continue with Node.js or invest my time in learning .NET or Spring Boot.

It depends on where you want to work.

There are a lot of Node jobs out there, and here in Australia the Node.JS vacancies are comparable to .NET and Java jobs. I would think the situation is similar in India, but you might have to look around a bit more.

.NET and Spring boot have a lot more scaffolding and other things involved in setting up. I always found it was a bit more difficult and frustrating when I was starting out than rolling something up for Node.JS. Node.JS was quick, transparent and easy compared to those frameworks. I also used Python, e.g. with FastAPI and Django. Less often Ruby on Rails.

I think .NET was designed for C# programmers (maybe also for VB.NET developers back in the day) who were moving to Internetworked applications. I remember when it first came out: it was clearly intended for developers who were already working in the Windows ecosystem. It’s not always a good choice for new projects. Same for Spring Boot. But then again, if you’re working in a big enterprise environment, you wouldn’t always get a choice. They use .NET and that’s the way it is, even if it’s sub-optimal.

Having said that, when you’re starting out, even if you do eventually go with .NET or Spring, starting out in Node.JS is a good idea. It gives you a bit more visibility into what’s really going on, and it’s quick and easy to set up a new API or some other back end. It’s quick and easy to integrate an ORM and set up a database with seeders, migrations and all the rest. You can integrate 2FA to your auth system with a few lines of code.

Once you become familiar with everything going on in the back end, who knows, you might end up in a .NET environment!

At this stage I would develop some skills in back end development and then have another look at .NET and Spring later. They can be frustrating for new back end developers and slow you down, in my experience. You can quickly and easily prototype and develop with Node.JS and that makes a big difference when you’re just starting out.

Good luck!

1 Like

You are kidding me right? Open seek.com.au and use C# and Node/Nodejs/Node.js as keywords to search for jobs. Currently in July, 2024, there are more than 7600 results for C# and 100-155 for Node, Nodejs or Node.js. It’s simply no match. Nodejs jobs in Australia have way less vacancies than C#. Even if you use .NET as a keyword to search there are more than 3600 results. Don’t tell me to use javascript to search as 80% of those jobs require you to have experience in C#/.Net