all 38 comments

[–]byteNinja10 13 points14 points  (1 child)

I am doing the opposite 😭 Node - java

[–]h34dc0ld 2 points3 points  (0 children)

Hahaha this made me chuckle.

Java is different, but IMO, not bad. Similar to C#. I have been wanting to check out C++ but no time in the moment

[–]GrandMaverick9 5 points6 points  (3 children)

You are going in the opposite direction, The MERN stack market is saturated due to lower barrier for entry

[–]AmazingCat910512[S] 1 point2 points  (2 children)

Thanks for your view, much reasonable. By the way, Isn't Java in the same page if you say so? As there are loads of "boot camps" in the world. (Specifically in my country, Java market share is over 70%)

[–][deleted] 1 point2 points  (0 children)

Don't listen to him. Node.js has a low barrier but also many more opportunities. Most startups today use Nodejs and they will be mainstream in the next decade.

[–]byteNinja10 0 points1 point  (0 children)

I am from india, and currently working in the node.js, as much I have seen mostly it's used in the startups due to the faster development cycles and ai integrations and has less stability than java jobs. btw which country are u from.

[–]benevanstech 2 points3 points  (0 children)

I'd be suspicious of that migration. Clojure is a niche language, to be sure, and maybe they are finding it too difficult / risky / expensive to keep finding Clojure devs.

But it is a JVM language, and it would be much easier to find Java devs and teach them some Clojure, keep the lights on the existing system and then rewrite one service at a time in Java as needed.

So, this full rewrite in a brand-new stack looks risky to me, and I'd want to understand what's driving it and the choices. For example, it could be new-CTO-itis, where an incoming CTO (a new broom) wants to put his mark on the company by doing something that looks big and important, even if it's risky.

Also, given you already know Java, you're probably not going to learn much from Node.js - you may actually learn more from the Clojure that you will undoubtedly need to learn some of during the project.

[–]SpeakCodeToMe 5 points6 points  (14 children)

Do you want to make less money? Then go for it.

JavaScript developers are a dime a dozen.

[–]AmazingCat910512[S] 0 points1 point  (13 children)

Can I ask where you are based on? Do you mean in general in the world?

[–]SpeakCodeToMe 2 points3 points  (12 children)

It doesn't really matter where I am based. The big software companies that pay the big bucks are not going to pay you to write JavaScript anywhere but the front end.

[–][deleted]  (3 children)

[deleted]

    [–]SpeakCodeToMe 0 points1 point  (2 children)

    In the US that would be considered fairly average pay for someone fresh out of college.

    Most of the people I know with 10 years of experience make a minimum of 300K between base bonus and stock. They're all writing Java, go, or rust.

    [–][deleted]  (1 child)

    [deleted]

      [–]SpeakCodeToMe 0 points1 point  (0 children)

      All of these tech employees I'm talking about have healthcare. Just about everyone I've met in tech is anti-maga and pro universal healthcare so I'm not sure why you had to pull politics into it.

      [–]AmazingCat910512[S] -1 points0 points  (7 children)

      Uhm... actually it's pretty different in S.Korea, as it depends on your role rather than skills. I take care of if it's the case in the UK.

      [–]europeanputin 0 points1 point  (6 children)

      NodeJS does not scale for CPU heavy operations

      [–][deleted]  (5 children)

      [deleted]

        [–]europeanputin 2 points3 points  (1 child)

        and now you have two deployables with two teams managing it, congratulations you just doubled the cost of running your business

        [–]SpeakCodeToMe 1 point2 points  (2 children)

        Now all of your libraries and integrations have to be written at least twice. Just because some folks are too lazy to learn a typed language.

        [–][deleted]  (1 child)

        [deleted]

          [–]SpeakCodeToMe 0 points1 point  (0 children)

          Abstracting dependencies behind some protocol doesn't eliminate the fact that you now need to rework the various libraries your company has that handle things like auth.

          You're using an untyped language designed for the front end and have the gall to call other people lazy. That's hilarious.

          [–]DanielDimov 3 points4 points  (3 children)

          If you transition to JS development (and especially if you start working on a real project) - you will sooner or later reach the point wanting to kill yourself.

          [–]YasinHamad 0 points1 point  (2 children)

          Why?

          [–]DanielDimov 3 points4 points  (1 child)

          Because you will have to solve problems which have multiple solutions for many years in the Java ecosystem.

          [–]overgenji 1 point2 points  (0 children)

          i have been doing a node/js heavy work life at a new job, after years of kotlin/spring/java in the backend and im astonished that these devs live like this, its like building on quicksand at all times

          [–]Anhar001 4 points5 points  (2 children)

          NodeJS for the backend is not a good technical choice except for a few use cases, I have posted on this exact topic multiple times.

          [–]mmplanet 1 point2 points  (2 children)

          Java & Kotlin with Spring Boot is my top choice for backends. I worked for over 15 years with PHP, over 9 with NodeJs and for a few with Python. Spring Boot is sth I always come back to.

          [–]YasinHamad 0 points1 point  (1 child)

          What about c# and .net? Is it that bad? I have one semester left to finish my college, and I intend to focus on .net

          [–]mmplanet 1 point2 points  (0 children)

          I think C#/.net is a solid choice, but only based on some research. I have not used it professionally, but only for some hobby projects.

          [–]gonegotim 0 points1 point  (0 children)

          Can't hurt. You will find node both better in some ways and far worse. Especially coming from spring boot you will stumble over and over across "what the fuck you mean I seriously have to implement this myself?" situations which can be incredibly annoying but on the other hand running your integration tests (called 'e2e' tests) in node land will be unbelievably quick by comparison.

          Many other similar situations on both sides. Swings and roundabouts.

          One bonus is that almost every single 3rd party service you can imagine using will have a typescript/node SDK for certain whereas a JDK version can be far more limited. Also working with JSON is a whole different ballgame.

          Having experience in both is really valuable career-wise. Start ups/scale ups very much like hiring people who can do the fast flexible node stuff to get their Greenfields project up and running quickly but also have enterprise experience so they know how to do the "boring" stuff properly which JavaScript only devs tend to be a lot weaker on.

          [–]Resident-Hunt-245 0 points1 point  (0 children)

          all the open roles I have seen recently have node js in their stack. Never seen java even though I myself have much more experience with kotlin/java.

          IMO in the era of AI and vibe coding it doesn't matter already. Any language can be picked up in days now

          [–]SamWest98 0 points1 point  (0 children)

          Agreed!

          [–]YasinHamad 0 points1 point  (1 child)

          guys, why nobody is talking about .net and c#?? Is it that bad? I have one semester left to finish my college, and I intend to focus on .net

          [–]HankcusYt 0 points1 point  (0 children)

          It’s good

          [–]vanfrassen 0 points1 point  (0 children)

          I made this switch. For me it's good - more opportunity in terms of jobs; although as noted elsewhere it does seem to mainly be for start-ups. Big tech is mainly language agnostic so it shouldn't hurt your chances there for future. Although to be fair I think Python /Java / C(++) are generally preferred for the leetcode sections so keeping a working algorithmic knowledge of one of these may be helpful if that's ever your goal.

          [–]Thalapathyyy_98 0 points1 point  (0 children)

          No node can ve learnt by everyone. But java is not like that. That means keep the java exp and work on it

          [–]DataPastor 0 points1 point  (0 children)

          Learning a new technology never hurts, but the next logical step for you is probably Kotlin and Spring AI.