Exploring the Relationships Between Tech Skills (Visualization)
Nerval's Lobster writes: Simon Hughes, Dice's Chief Data Scientist, has put together an experimental visualization that explores how tech skills relate to one another. In the visualization, every circle or node represents a particular skill; colors designate communities that coalesce around skills. Try clicking "Java", for example, and notice how many other skills accompany it (a high-degree node, as graph theory would call it). As a popular skill, it appears to be present in many communities: Big Data, Oracle Database, System Administration, Automation/Testing, and (of course) Web and Software Development. You may or may not agree with some relationships, but keep in mind, it was all generated in an automatic way by computer code, untouched by a human. Building it started with Gephi, an open-source network analysis and visualization software package, by importing a pair-wise comma-separated list of skills and their similarity scores (as Simon describes in his article) and running a number of analyses: Force Atlas layout to draw a force-directed graph, Avg. Path Length to calculate the Betweenness Centrality that determines the size of a node, and finally Modularity to detect communities of skills (again, color-coded in the visualization). The graph was then exported as an XML graph file (GEXF) and converted to JSON format with two sets of elements: Nodes and Links. "We would love to hear your feedback and questions," Simon says.
Pius this Dice shit off.
I didn't find PHP anywhere.
Also, is there a way (or browser) to make the diagram larger?
"Almost every wise saying has an opposite one, no less wise, to balance it." - George Santayana
This is a nice visualization. If I was young and aimless, I might see some value in learning new techs I don't actually need right now. Learning new techs could help you land jobs in today's age of clueless HR people judging you by your tech list vs your ability.
However, I'm getting older and I learn another tech only if I actually need to use it for something I'm working on. So I'll be happily deficient in lots of languages I don't need. I'm certain I could be at least of average skill after about two weeks of most languages as that is my past experience with new languages. But don't tell HR. Today's software engineering world is so averse to training people it rarely considers searching for a veteran software engineer and letting him come up to speed on random techs.
If I spent a couple weeks on every tech I hear about for the sake of toying with it, I'd never get anything done.
God spoke to me
Find and click on MongoDB. Then notice that "Database" is this tiny-assed little circle waaaaaaaaaaaaaaaaaaay off to one side.
Got a pretty good laugh out of it. :)
Quo usque tandem abutere, Nimbus, patientia nostra?
Many paradigms complete release software investigate tree branching source code compile run test.
and i've seen my fair share of poor visualizations
but i think this is actually really well done, useful even
congratulations to Simon Hughes
intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
Today's software engineering world is so averse to training people it rarely considers searching for a veteran software engineer and letting him come up to speed on random techs.
Not to put too fine a point on it but that's your own responsibility, not the company you work for.
If there is an aversion to companies training people. that' offset by the ease of learning any newer (or even older) technology, for free.
If you wait for the company to help you, you (and your career) will ossify. I have seen the result when I was younger, the result is not good for your freedom to choose favorable working conditions.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I love that QA is a tiny little dot right in the middle of everything.
Quick! Hide it before they use it to generate H-1B targeting resumes having impossible combo's of skills to filter away citizens.
Table-ized A.I.
When did the right panel get subsumed by ads? Had this been happening for long and I just hadn't noticed? I checked out the site in chrome to see the site without scripts, and holy smokes has it gotten bad.
I would not frequent this site if the normal experience was accompanied by a trojan condom video ad (among several others) on loop.
Millions long for immortality who do not know what to do with themselves on a rainy Sunday afternoon. -- Susan Ertz
Shell Scripting, just beside Linux administration, is not linked.
I thought Debian was the most used Linux OS for servers? Am I wrong?
Today's software engineering world is so averse to training people it rarely considers searching for a veteran software engineer and letting him come up to speed on random techs.
Not to put too fine a point on it but that's your own responsibility, not the company you work for.
Are you kidding?
Sure, that applies if you're a short-term contractor. But permanent staff ought to be getting a regular training budget from their companies. If you're not, then you're working for a bad employer.
If there is an aversion to companies training people. that' offset by the ease of learning any newer (or even older) technology, for free.
It may be free in the financial sense, but it still has a cost in time. A good employer will give you that time. And pay the costs if there are any. You may need to explicitly ask for it, but the bottom line is that they should be investing in their long-term staff.
If you wait for the company to help you, you (and your career) will ossify. I have seen the result when I was younger, the result is not good for your freedom to choose favorable working conditions.
My own experience: In the last year, I've learned Node.js on company time. We haven't done any projects with it yet, but they gave me the time to do a partial rewrite of one of our existing system using it, as a proof-of-concept. We've got a licensed set of Robert C Martin's "Clean Code" video series on the company network, and dev staff are positively encouraged to spend time watching those during working hours. And I'm being sent on a dev conference later this month.
I do agree with you though -- not all companies are like that, and I have worked at places where even one of those things would have been a stretch too far. So you really do have to pick the right employer. But truthfully, all employers should be like that if they really value their staff. It's not just about the headline salary figure.
It's not very reliable data.
They took the similarity vectors from the job postings, not from resumes, so rather than "what you're likely to know", they computed "what an employer is likely to want at the same time as wanting something else", and then declared that a similarity due to an already skewed cosine similarity metric. This happens because employers are more likely to copy other, similar job postings, or other job postings for companies in a similar business as them, or those of a company whose employees they wish to hire away.
They claimed that they tried using resumes, but that the resulting data was not as "clean"; uh... duh?
This visualization was not actually very useful, unless you are trying to design a resume to get yourself hired, regardless of your actual current capabilities.
Read the blog post again. http://insights.dice.com/2015/...
"I think that’s pretty cool, given we’re generating that automatically from job descriptions posted on our site. We also tried using the resume dataset, but the results were of a lower quality, as the skills extracted from resumes can be from different jobs."
It was extracted from job-postings, which would only identify Schelling points in the hiring industry, not skill clusters common to people with certain desirable skill sets; in other words, it "how to fudge your resume", rather than "how to find employees like the ones I have which I like".
This is news?
C# is just as big as Linux? Whodathunk.
Between implies two things - between tech skills and what? Or did they mean among all tech skills?
by importing a pair-wise comma-separated list of skills and their similarity scores ...
we’re generating that automatically from job descriptions posted on our site.
So what this really shows is how often the same two buzzwords appear together in a job description posted on Dice.
I found another comment in his report interesting:
We also tried using the resume dataset, but the results were of a lower quality,
I assume by "lower quality" he really means "people list every buzzword they can think of on the resumes posted on Dice".
Given the inputs I wouldn't expect any surprises in the results. But that said, it's an interesting project and they did a very nice job with the visualization.
It's interesting that Apple and its product and technologies are not related to any of these things in any way.
Yes, self teach yourself how to design a Google datacenter. Your responsibility.
Problems difficult enough that are worth hiring on or replacing someone are not things you can self teach. You need to be intimate with the problem domain, which requires having access to a real world situation.
I didn't see anything about hardware (except where it can be implied in a few of the circles), for instance.
Looked for two dots: C and SQL.
C has a nice big dot, but connects to only a handful of extremely broad-scoped nodes.
SQL, OTOH, has a tiny dot, and connects to just about everything on the chart.
Today's software engineering world is so averse to training people it rarely considers searching for a veteran software engineer and letting him come up to speed on random techs.
Not to put too fine a point on it but that's your own responsibility, not the company you work for.
Only if you are a contractor. Otherwise, the answer is no.
Since when Palo Alto is a tech skill?
Need to update my CV...
My apologies to whomever wrote the original code for dumping Roland/Hugh posts for the lack of attribution. Please let me know and I will provide proper attribution in the future.
For Chrome users, save this code to a file, then drag the file to the chrome extensions window to install it as a user script.
'The tyrant will always find pretext for his tyranny.' - Aesop's Fables
It's a polite way of saying "stop putting crap in your resumes". Don't encourage people to do more of it ;-)
In all seriousness though, have you ever tried to analyse unstructured text? It's hard. How would you realistically improve it? Do you start with a preconceived list of technology key words and count them in the resumes? People misspell words. Words have multiple meanings depending on context. Technologies change and you might miss key words. Or you could count recent Stack Exchange topic tags, but that only shows the latest fads people are struggling with, not what they are being hired for. Survey a bunch of people about what they do at work? Too expensive. I think this is a really good start in spite of the limitations.
Human Rights, Article 12: Freedom from Interference with Privacy, Family, Home and Correspondence
Where are the hardware skills?
'Tech skills' don't mean much without hardware.
Strat
Progressivism (aka US 'Liberalism'): Ideas so good they need a police/surveillance-state to enforce.
More like this please!! Less of the fake article advertising.
I would love to see the same technique applied to linkedin's skill endorsements.
Ah, you're right. Thank you for that correction.
No problemo
I miss subtle stuff all the time. I rely on really strict semantics in place of "not trusting people", which I have a hard time doing (data is data).
In all seriousness though, have you ever tried to analyse unstructured text? It's hard. How would you realistically improve it? Do you start with a preconceived list of technology key words and count them in the resumes? People misspell words. Words have multiple meanings depending on context.
I've been writing code like this since 1985. Then, it was in LISP.
It's actually trivial to me at this point. You end up with a meaning trie with differential probability vectors, and some of the roots wither away as you go down. Making a machine decision is harder, but not entirely impossible.
I get incredibly annoyed at people like Lazlo Bock who want to put everyone's resumes into a form that basically allows Google (Lazlo Bock works for Google) or other companies to magically allow you to come into a new job under the horse collar of a performance review of your previous job which they were in no way involved with.
The whole "HR metrics" industry... uh... kinda pisses me off? I pick companies based on criterion other than standard metrics. If they pick me that way... they do not deserve me. Mostly they stumble into me, I fix them, and then I exit.
I understand the "OMG we need people who know what they are doing and not recent graduates!" panic. Does not mean I sympathize.