JavaScript -> Startups that hire young, "dynamic" people doing what usually no one cares about (most of them must bankrupt by definition).

Java / C# -> The whole enterprise sector. Which is much, much bigger and people tend to know very little about it.

A lot of devs are funny I think. I come entirely from the enterprise sector where I have been working my whole life. Looking at a "startup lifestyle" it's hard for me to think about it seriously. Yes, there's FANG, but who'd like to work there knowing that there are more healthy options. Oh, yes - the people who think that kind of work is a paramount of what's possible ;) I'd prefer to work with people who think clearly, know their options, can assess risks for instance related with an inherent exotic approach of the JavaScript world. There's no place in enterprise for unproven methods like that. Corporations are like military. They must rely on what they use to support themselves. Therefore, what you prefer to do also depends on which people you like better - yuppies or older engineers, thinking a little bit more seriously about themselves. I'm a junior dev, I'm 34 though, and from the very start I had a feeling that there's something very, very wrong with those JavaScript young crowds out there. I went to a couple of meetups in my city, and it occurs that majority of them are the JavaScript ones... There's one serious C# group (I'm into that stack) and probably 100 JavaScript-ish ones. The quality of the people in the first one, their maturity plus how they think about technology, I consider fairly more reasonable for my personal taste. Hence, I won't get into the JS camp until there's no other choice. Years passed since my first epiphany of "There's something wrong with those JS people" and the feeling is only getting stronger. I can't argue about it logically, so I'm not going to claim that kind of approach is universal in any way, bu I must also say that after countless hours of discussions with the C# (and Java too) people, a lot of them shares that feelings. It's about philosophy, about how one think things should be done on the most fundamental level. I've seen in my life maybe a handful of really reasonable JS devs, which isn't the case in the C# or Java world at all...

I didn't refer to most of your questions, @Op. I just want you to consider which kind of people are your people. I also wonder how do you deal in your workplace with your specific mindset, which honestly seems like the one often found among Java devs, not the JS ones.

Myself, I prefer to work on big scale, important, enterprise projects. Startups are just not for me. But I also like to do my own stuff after work, and both Java and C# are very comfortable for doing that too. I just feel very hesitant with using technologies that seem to be better suited for building let's say prototypes. I'd rather prefer to start with a real thing.

For the rest of the people reading this post - try not to hate me. I'm not claiming who's a better individual because which language is being used. I'm purely referring to my own experiences as someone who's having I think a rather different background than most people in web development. I'd really like to better understand why I'm having the impressions I've been writing about.

On the other hand there's a ton of people swearing that JS is the one for them. And they usually too can't help me understand why it's so obvious for them, like I don't know how to make them understand that the existence of JS in an abomination... And that I can't wait when WebAssembly is going to be a standard ;)

So, the question remains - are we really that different in how we understand what technology is and how it should be done, or maybe we all have a big lesson to learn here that's going to come later in our professional endeavors? Maybe someone with A LOT of real world experience could help with answering it.