I'm thinking that this also has more to do with the sorts of jobs that would end up on a job board (like Indeed or Monster or Dice) versus the types of jobs that appear in the "Now Hiring" HN sections.
.NET being more of an enterprise technology, I'm not surprised that the first step would be for HR to make job postings on Indeed or other sites. With Node, I don't have the same impression of it being accepted in the enterprise yet (though MS is pushing it with Azure, for instance), and it's also such a young technology that not too many organizations are hiring maintenance developers for legacy projects yet.
The relative trends chart is exceptionally misleading.
That is not true. First of all, there are at least a few c# opening each month in whoishiring monthly.post. Second, a quick inspection on these posts already gave me a few of these opening that were both looking for junior dev and supports remote.
just did a quick galance on feburary whoishiring post:
Kaggle - San Francisco, CA
We're hiring our next Software Developer - Web Platform (C#, ASP.NET). REMOTE within US timezones or E3 is a possibility for the right candidate.
Kaggle runs data competitions that solve business problems for companies and provide fun and prize money to the world's community of data scientists. We're offering an opportunity to be involved in what Forbes magazine called the most novel Machine Learning applications that are "eating the world" [1]. As a developer, you'll be responsible for keeping kaggle.com (and the 140,000+ users who play there) running: everything from front-end UI work to server-side code and DB architecture.
I don't think that this search has any smarts behind it -- it just matches on strings. So .net would include both the framework and the tld listed in the posting. For example, check out what happens if you replace .net with .org:
Good point; .net in a company's url will skew the results. But C# eliminates other .net languages like VB.net, F# (a much smaller quantity). The true quantity of .NET jobs posted is probably somewhere between the .net and c# results.
My experience is that there are more .NET jobs out there than Java. So maybe even Java suffers from some overlap in that search result. Does Java include JavaScript?
While this particular study isn't the best, one thing I have always noticed about Node.js is that the ratio of hype to job openings is way off compared to other languages in the past.
I don't know about the accuracy of this graph depicting the Node.js job market. I think a lot of companies like to sound "hip" and include Node.js to try and attract javascript engineers. YMMV but I've found most companies saying "you can hack in node" means "we've done a side project or two using Node.js"
I've used it like this entirely to try trip keyword alerts. The competition for talent is brutal, and their is surprisingly not much in the way of anti-black hat SEO on most job sites. (No, I'm not proud about this)
I mean it isn't like we'd stop them from using node for things, just that they'd have a lot of other stuff to do.
realistically, unless you're part of a startup where the primary technology stack has yet to be defined,
finding paid work in node isn't all that common.
I work at PayScale and I'm a pretty huge Node fan. We don't use it internally, but last year (maybe the year before, I don't remember)... I made sure we could report on it.
I do think node is for real. I'm a database architect by trade, but have picked up a copy of nodejs in action to try to get in on this. I plan to get up to speed and start creating sites with a MEAN stack.
If all I get out of it is increased javascript skills and linux familiarlity, then it'll be time well spent.
My current shop is .net/windows, but in the last couple years we've introduced nginx, python (django), and angular. Times they are a changin'.
Notice that PHP is missing from the list. I would imagine that PHP is still dominating over all over web languages. And it's not surprising to see Node.js higher than other languages like Ruby or Python, Node.js has commercial appeal and is more hip.
Slight nitpick, but I noticed Javascript and Node.js n the same charts, Node.js is Javascript and Javascript is Node.js.
"If your concern is finding a tech job then your trusty existing technologies are continuing to serve you well." — this statement made me laugh. Any sane technical director/lead knows better than to make a business rely on something still so new. Node.js has proven itself to an extent, but it's got a long way to go before people start using over the likes of Python or .NET.
I've used Node.js a little bit myself, but mostly only when hacking on an idea, not for production use. At the end of the day, use what you like and build what you love.
Hipster brogrammer wanted.
Lack of knowledge of other languages wanted.
Thinking every part of the tech stack should be written in JS.
Must create yet another layer of shit to translate into JS and pretend it is cool!
Must be willing to run to the next shiny-shiny when released and be willing to abandon current projects.
I was curious, so I actually searched through the Node.js job ads on indeed.com. I wanted to see some of these hipster jobs ads written by companies that are surely chasing a fad and doomed to fail. For everyone's benefit I've listed some of those companies here:
I'm curious, why do people treat Node.js and JavaScript as separate? I understand that the DOM API and Node's core libraries are different, but any good programmer can pick up new libraries and frameworks in a matter of weeks.
I just find it strange that as a JavaScript developer, many recruiters (and even some companies) won't even consider me for a Node position unless I explicitly state that I have Node experience.
There's still plenty of learning involved (having trained non-Node JS developers), especially learning "the Node way". I guess those companies are the types that needs someone last week, they're probably doing you a favor by not considering you.
There's also JavaScript developers who are only interested in front-end development, and for them it's a good way to let them know what to expect.
In reality it's not different from asking for Swing developers vs. general Java skills.
The Node Way is best described as:
Forget Design
Architecture is old
Testing is forgotten
JS is the only code
Node today is shiny
So here we stay
Pretending to be developers
Blagging all the pay
Directory structures, module systems, package managers, build tools, communities, learning resources, etc. Also, the DOMs API and Node's could not be any more different. Their concerns have literally nothing to do with one another. Plus, you really can't pick up a framework in a few weeks. There's a reason why people pay more for someone working in Rails for 5 years, than someone whose been using it for 2.
I don't get how any of those are the "Node way", any more than they are the "Rails way" or the "Python way", or even the "PHP way" these days.
I can only really think of two patterns I see in node.js that I don't see everywhere else: eventemitter and chaining middleware together with next() calls. Hardly something it takes 5 years to learn. ;)
> I don't get how any of those are the "Node way", any more than they are the "Rails way" or the "Python way", or even the "PHP way" these days.
Well, they're specific to Node and therefore have to be learned, to some extent.
There's also a million other things, some little some big. Little -> knowing that the first argument of a callback is an error. Big -> Understanding Streams. Medium -> the use of small modules, knowing when to break up a file into smaller modules, knowing when to break up a project into many modules, etc.
'directory/index.js' is another of those. Also, module.exports. Bigger would be like knowing that express has one hoof at the glue factory because koa is bringing mad generators.
Also, there's just some stuff you know when you're working with Node all day. Same thing with every profession and specialities. If you work in Rails all day, your'e going to know a hell of a lot more about it than me. I can't just pick up what you know in a weekend.
It doesn't matter where you see them, that's like saying that french and english are the same because they share some words. It's patterns that are particular to a certain community of developers, but of course, can come up in other languages.
This is an example of a node-ism,
if (err) { return err }
console.log("KEEP GOING")
Notice how we break from an error right away. As a Node developer, you may not use the pattern, but you're definitely aware of it. Someone with just JS, and let's be honest, jQuery, is not used to returning quickly if there is an error. Decorating and animating a UI is far more forgiving.
I's not about how long it takes to learn a certain module. It's about mitigating risk in building large web apps.
Probably because most people who know JS only as a front-end developer have never had to work on the back-end. If a developer knew JS and something like python, java or ruby then sure... that's a good candidate.
I'm not surprised by this. Node's grunt.js is really useful for minifying/preprocessing js/css files in front-end heavy applications. I'm not even sure how you would do all that with Java or C#.
I've seen node listed in job ads where node.js isn't even used at the company looking to hire, or where they'll use npm/bower/grunt tooling. It's a super trendy buzzword.
Indeed.co.uk is an excellent job search engine but from what I have noticed it's flooded with ads coming from recruitment agencies. I wouldn't be surprised if quite a lot of those job postings would be replicates, posted by different recruiters/agencies.
Also, there seems to be quite a lot of confusion about node.js around recruiters/job postings. It is often being treated as another *.js library and put under front-end category.
53 comments
[ 4.4 ms ] story [ 108 ms ] thread.NET being more of an enterprise technology, I'm not surprised that the first step would be for HR to make job postings on Indeed or other sites. With Node, I don't have the same impression of it being accepted in the enterprise yet (though MS is pushing it with Azure, for instance), and it's also such a young technology that not too many organizations are hiring maintenance developers for legacy projects yet.
The relative trends chart is exceptionally misleading.
Kaggle - San Francisco, CA We're hiring our next Software Developer - Web Platform (C#, ASP.NET). REMOTE within US timezones or E3 is a possibility for the right candidate.
Kaggle runs data competitions that solve business problems for companies and provide fun and prize money to the world's community of data scientists. We're offering an opportunity to be involved in what Forbes magazine called the most novel Machine Learning applications that are "eating the world" [1]. As a developer, you'll be responsible for keeping kaggle.com (and the 140,000+ users who play there) running: everything from front-end UI work to server-side code and DB architecture.
See https://www.kaggle.com/careers/ to apply and learn more about our team.
You may want to use regex to find more. Hope it helps.
http://www.indeed.com/jobtrends?q=javascript%2C+objective+c%...
http://www.indeed.com/jobtrends?q=javascript%2C+java%2C+node...
It's always funny when technology hipsters are surprised that the wider world doesn't share their anti-MS biases.
I mean it isn't like we'd stop them from using node for things, just that they'd have a lot of other stuff to do.
What this graph really means is... "How many job descriptions contain the term ...". And that's about it.
realistically, unless you're part of a startup where the primary technology stack has yet to be defined, finding paid work in node isn't all that common.
Here is some salary data on it. http://www.payscale.com/research/US/Skill=Node.js/Salary
I've got to run to a meeting, but I'll see if I can find more details when I get back
If all I get out of it is increased javascript skills and linux familiarlity, then it'll be time well spent.
My current shop is .net/windows, but in the last couple years we've introduced nginx, python (django), and angular. Times they are a changin'.
Slight nitpick, but I noticed Javascript and Node.js n the same charts, Node.js is Javascript and Javascript is Node.js.
"If your concern is finding a tech job then your trusty existing technologies are continuing to serve you well." — this statement made me laugh. Any sane technical director/lead knows better than to make a business rely on something still so new. Node.js has proven itself to an extent, but it's got a long way to go before people start using over the likes of Python or .NET.
I've used Node.js a little bit myself, but mostly only when hacking on an idea, not for production use. At the end of the day, use what you like and build what you love.
Hipster brogrammer wanted. Lack of knowledge of other languages wanted. Thinking every part of the tech stack should be written in JS. Must create yet another layer of shit to translate into JS and pretend it is cool! Must be willing to run to the next shiny-shiny when released and be willing to abandon current projects.
Amazon, Microsoft, Apple, Expedia, Staples, Nordstrom, Macy's, Disney, Hulu, Comcast, T-Mobile, AT&T, Getty, LinkedIn, Heroku, Oracle, eBay, AOL, E*TRADE, Yahoo, Walmart, Sony Computer Entertainment, Lockheed Martin, GE, HP, MLB
Glad I don't work for any of THOSE jerks!
/sarcasm
I just find it strange that as a JavaScript developer, many recruiters (and even some companies) won't even consider me for a Node position unless I explicitly state that I have Node experience.
There's also JavaScript developers who are only interested in front-end development, and for them it's a good way to let them know what to expect.
In reality it's not different from asking for Swing developers vs. general Java skills.
What is "the Node way"?
I love node, btw!
I can only really think of two patterns I see in node.js that I don't see everywhere else: eventemitter and chaining middleware together with next() calls. Hardly something it takes 5 years to learn. ;)
Well, they're specific to Node and therefore have to be learned, to some extent.
There's also a million other things, some little some big. Little -> knowing that the first argument of a callback is an error. Big -> Understanding Streams. Medium -> the use of small modules, knowing when to break up a file into smaller modules, knowing when to break up a project into many modules, etc.
Also, there's just some stuff you know when you're working with Node all day. Same thing with every profession and specialities. If you work in Rails all day, your'e going to know a hell of a lot more about it than me. I can't just pick up what you know in a weekend.
This is an example of a node-ism,
if (err) { return err } console.log("KEEP GOING")
Notice how we break from an error right away. As a Node developer, you may not use the pattern, but you're definitely aware of it. Someone with just JS, and let's be honest, jQuery, is not used to returning quickly if there is an error. Decorating and animating a UI is far more forgiving.
I's not about how long it takes to learn a certain module. It's about mitigating risk in building large web apps.
http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minifica...
http://www.tiobe.com/index.php/content/paperinfo/tpci/index....
Also, there seems to be quite a lot of confusion about node.js around recruiters/job postings. It is often being treated as another *.js library and put under front-end category.