Here we take a look at a selection of programming languages and compare their mean salary and demand. The data comes from an analysis of 1.5 million tech job advertisements collected between January and June 2014 from the USA, Great Britain, and Australia.
Clustering of languages
The first thing we notice is an obvious clustering of languages into three distinct groups:
- Established leaders (blue)
- Followers (green)
- Niche (orange)
Skills which are following this group pay on average the same salaries, although their is 50% less demand for them. This group contains long established languages such as PHP, Python, and Ruby. The leaders of this pack vary slightly by region, but the membership is very stable.
We find a small group of niche skills which show very low demand and salaries almost 60% lower. Some of these are languages which are popular with the developer community (e.g. Haskell, & Clojure) but have not achieved a strong uptake in paying roles. Many we suspect are used in the academic environment as this group also contains Lisp, and Fortran.
The established leaders
A C# vs Java comparisson of demand shows a different mix. In the USA and Australia, demand for Java is higher. This is reversed in Great Britain with C# having 60% higher demand. This is the main contributing factor to the higher average global demand (1.4x) for C#.
Some other insights
Niche languages are obviously popular in the community and on sites such as GitHub, and Hacker News. They don't however offer stable employment (yet).
About the data and analysis
Job advertisements aren't a perfect set of data, but can be a good proxy for demand and salary analysis.
Some skills are only found in a very small number of job ads. Therefore salary statistics for these skills may not be representative of the real world.
This analysis is based on 302,000 job advertisements mentioning these languages. The number of jobs is used to indicate demand, whilst salaries are averaged across the dataset.
Salaries are converted to a base currency and then adjusted for living costs using the Big Mac Index (Economist 2014). This isn't a perfect representation as salaries vary within a country. It does however provide a generalised method for making large scale comparissons like this.
If you're interested in the challenges of analysing data in this way, read this disclosure.