It's interesting how all these top companies insist on JS expertise, I didn't know that it was so important for an interview and that's something I need to work on.
I've never had a job where I was required to code in JS. However, I have had one interview where I went headfirst into SCSS when the job actually only required C/C++ skills (it was work on a computer vision system).
The thing is, I think most interviewers ask for what they are most comfortable with, so they can evaluate. Which is why questions related to JS are probably so common for companies like Google, Facebook, Twitter, etc. even if you don't actually need it or use it.
However, I would also point out that JS is pretty easy, if you know any of the standard languages you'll be fine. Although, I do find it humorous because JS is basically one of the worst constructed languages I know of (even though I use it daily...).
Dude you'll always have to do something with HTML/CSS/JS. Even if its not your main gig. Luckily all three are fairly simple. Just go make a simple webapp without any libraries and from that you'll pick up 99% of what you'd need to know.
Don't know why this is being downvoted, it certainly resonates with my experience. I write C by day, but I found that making a webapp that compared offers w/ cost of living and tax treatment to be an eye opener. I learned a great deal about how the internet works from just that weekend project, and I would heartily recommend making a webapp. Like it or not, HTML/CSS/JS is about as cross platform as C (don't do anything fancy and you will be fine).
I've never had to write a single line of HTML/CSS/JS at work.
There's a lot of software in the world that isn't web based. Hardware, operating systems, databases, AI, libraries, languages, compilers. There isn't a computer on this planet that functions without these things.
It's "Dude you'll always have to do something with HTML/CSS/JS." that is attracting the downvotes. That is a thoroughly web-centric view of of the world. Some people never write software with graphical interfaces at all, let alone a web-based one. I never touched a GUI (LabView doesn't count :P) until about nine months ago, and I have been writing code full-time for over seven years and intermittently for over thirteen.
The comment about how easy it is to learn is spot on, in my experience. I was very surprised at how fast I ramped up on vanilla JavaScript and Angular.
Should probably clarify that it's only important if you're looking for Web jobs :-) Sometimes people here forget there's more to software than the web.
I'm very much more on the data analysis side of things and decidedly not a web developer, but I still regularly get told "great work, can you display the data on a cool website?" In fact if I was hiring a new data analysis colleague I would very much prefer one who knew javascript for this very reason.
Until a week ago, the only reason I needed to know Javascript was for my own side projects. I have never done anything requiring the web professionally until about 4 days ago.
Sorry I should have qualified - it's true for all the jobs I search for. Other cities might still have jobs that are purely back end or pure games or something but here in Melbourne the jobs I see all have a web UI component.
Good thing there's still going to be a future in non JavaScript web development.
Bring on Web Assembly. Those who dislike what JS has become over the last 5-10 years will just use their own stuff and can finally just ignore JS completely.
Nothing wrong with JavaScript, as long as we are talking about ES2015.
And even when WebAssembly comes along, the best language to program it in is one that naturally requires asynchronous programming, because web browsers are heavy on network traffic and UI interaction and both those things need asynchronous programming.
Other languages like Python have asynch programming but I would suggest that the pervasive nature of asynch in JavaScript will continue to make it a leader in WebAssembly.
Every time I turn to JavaScript for something, the barrier to entry for non trivial work rises.
JavaScript feels to me... As a programmer working 8 hours a day in Python much significant portions of it doing Django, and a few hours a week learning Elixir, C and Rust...
Like the whole world is rolling up a giant katamari daciamacy ball, over the shiftiest powdery sand in an active earthquake zone. I try WebPack and its default behaviour is to turn my sass into JavaScript?! I stick with it and go looking for a plugin to keep the build products directory clean, I find one tiny plugin with a tiny documentation page that barely explains it, so I have to read the source code and experiment a bit before I discover how it works.
Then there is the mess of "which way do you load modules" mixed with the mountain of code that was written for global scope. "Oh just rewrite the code" ... I'm sorry I'm too busy writing new code to waste time rewriting all this other code just because everything is churning like sharks in a feeding frenzy.
/end js induced unhappiness rant
I'm really happy with my productivity pretty much everywhere else. JavaScript just gets more frustrating to work with every time I touch it. :-/ I actually enjoy writing pure stand alone browser JavaScript when I'm not working with any libraries, like I said it's a fine language, it's just the ecosystem that I have issues with.
This is nonsense. I recently applied to a bunch of companies and my language of choice for the interviews was C. They never cared about my language that I used.
The thing is, I think most interviewers ask for what they are most comfortable with, so they can evaluate. Which is why questions related to JS are probably so common for companies like Google, Facebook, Twitter, etc. even if you don't actually need it or use it.
However, I would also point out that JS is pretty easy, if you know any of the standard languages you'll be fine. Although, I do find it humorous because JS is basically one of the worst constructed languages I know of (even though I use it daily...).