Live data from Hacker News

Rankings of required skills in software development job listings

latitude.work

41–50 of 56 posts

Re: Rankings of required skills in software development job listings

#43
post #35
post #31

Actually in terms of finding if job site is useful for me that listing is nice. Quick scroll and I see there are no technologies that I use. No .NET, C#, Entity framework.

No SQL Server, or any of the Azure PaaS - service busses, event hubs, stream analytics, Data Lake, etc. Fairly standard/boring "we're making a monolithic app in a dynamic language" stuff.

A ton of it is security and Data Science related, if you actually look at the jobs. That's one of the reasons python is so popular, it's pretty dominate in those circles.

Re: Rankings of required skills in software development job listings

#45

I'm surprised hadoop is at the top for distributed processing. I don't imagine many businesses really actually want hadoop. Anybody here using it as part of their stack and can justify its use?

I assume the main reason people are using hadoop these days is for HDFS. Spark has supplanted it for actual processing. So the reason hadoop could be so high is that when organizations use part of the hadoop ecosystem (like Cassandra, Hive, and of course Spark) they mention hadoop along with it. Then even though not many organizations are using vanilla hadoop, since it's used in conjunction with many other technologies, it dominates the list.

Re: Rankings of required skills in software development job listings

#46

Really small sample size, with a lot of potential biases. I wouldn't base any decisions on this data.

True... but poor C anyways :(

Yeah. But most of the beast Python programmers at my work are guys that used C for decades, and have a strong grasp of classic programming and the full toolbelt of awk, sed, perl, bash etc.. I think the "danger" of these lists is they can convince newer devs that all they need is to learn a Python or JS framework to be a valuable contributor on a software team, viewing the world of C programming to be useless. Many of them will end up writing awful code without understanding why, lacking the larger context of the computing ecosystem.

Re: Rankings of required skills in software development job listings

#47

Really small sample size, with a lot of potential biases. I wouldn't base any decisions on this data.

Yep based on just a couple hundred job postings on their site. There are certainly tons of .NET/C# jobs out there but not on this list.

Re: Rankings of required skills in software development job listings

#48

The #2 Operating System is iOS, and no Objective-C or Swift in the language listing?

That makes sense. Most iOS and MacOS programming uses those languages, and most use of those languages is for iOS or MacOS programming. Thus, I'd generally only expect to see those languages listed for the small fraction of jobs where a company is using those languages for something other than iOS or MacOS.

Re: Rankings of required skills in software development job listings

#49

I'm surprised hadoop is at the top for distributed processing. I don't imagine many businesses really actually want hadoop. Anybody here using it as part of their stack and can justify its use?

I don't imagine many businesses really actually want hadoop.

I imagine quite a few do. They may not be using the map/reduce API (although there are almost certainly use cases where that makes sense too), but HDFS and Yarn are pretty ubiquitous.

Re: Rankings of required skills in software development job listings

#50
I got started in software in the late 90s. At that time, there were immense philosophical differences between the communities that drove each programming language. Perl had a well known culture, which was utterly different than what the Python folks were doing. The people around Java were excited about the thought of building the ultimate enterprise language, and there was talk of some day automating UML schemas so that projects would only need architects, not actual coders -- an idea utterly foreign to the Python crowd. Ruby's culture was shaped by Matz, who said that programmers should experience joy while working. PHP rejected all the hype about Object Oriented Programming, instead, PHP was for people who wanted to write programs using a collection of functions, with an emphasis on quick and dirty projects -- and in an era when there were no package managers, PHP's "all in one" philosophy was a real blessing. A huge amount of code was included in the default install of PHP. And C programming was a different beast depending on whether you were focused on Unix machines, or Windows, or Macs.

The idea of Open Source was still in its early days, and only Perl had a great central library of code that was free for anyone to use.

And of all these languages, most were hot with a fanatic idealism about how Object Oriented Programming would solve the problems of the tech industry. Those languages that rejected Object Oriented Programming (Python and PHP, and also, to a lesser extent, Perl) were proud of their defiance, till the moment (a few years later) when they gave in and decided to become Object Oriented.

There has been a convergence of culture. Nowadays most programming languages have all of the same things:

1.) package managers to manage your dependencies

2.) frameworks with command line tools to automate setup and database migrations

3.) multi paradigm -- most languages now facilitate Object Oriented Programming, but also Logic programming and Functional programming and pattern matching, and other paradigms.

4.) open source libraries of code for everything, typically on Github

Nowadays I can go from writing in Python to writing in Javascript, and most of the stuff I expect is exactly the same in both languages. I can think these words about practically any language that I am asked to work with: "Oh, I have to write a module to send email to new users? Okay, let me look up the open source libraries that handle email. There are probably a dozen projects on Github"

There is much more of a mainstream to computer programming than their used to be. This "normalization" happened first with software for the Internet, though lately its even been spreading to hardware projects. A few languages (Clojure, Haskell) still have strong philosophical differences from the mainstream, but they offer the common basics, like any languages that nowadays wants to make a programmer feel productive.

So these lists of skills are less meaningful than they used to be. Once upon a time it would take months to give up one language and learn a new one, whereas nowadays the switch is easier, since so many assumptions that are true in one language remain true when you switch to a different language.

Post reply on HN