Which programming languages pay the most? I made my own salary charts
We have all seen the articles online about the best paying programming languages featuring Visual Basic, CSS, and Perl. I have always been a little bit suspicious and had an itch to find out the truth. Today, I will reveal everything. I will even tell you how much I make.
I had many questions...
- What are really the best paying programming languages? Ideally I wanted to see a list without Visual Basic so that I don't have to regret that I didn't stick to my first programming language and wasted years learning others instead.
- Can programming languages that don't rank well in average or median salaries still provide high paying jobs? And how likely is it?
- What happens when we leave the USA out of the picture? After all, I am a
proudEuropean and Hollywood is not what it used to be. - Does the choice of database technology or the organization size influence the salary paid for a programming language? In other words, could I get more monopoly money by going to a larger playground, while still playing with snakes?
- When working with Python, does it pay better to be a data scientist or a web developer? In other words, should I make more Jupyter notebooks?
- What is the maximum salary reported when using a particular language? Depending on whether you like your glass half full, this might make your day better or worse. And I like that.
Hopefully you are now dying to know and won't abandon the page just yet!
Contents:
- Why the statistics make perfect sense
- The best paying languages in the world
- The best paying languages among the highest salaries
- The best paying languages outside of the USA
- The best paying languages in the EU
- The best paying languages in India
- The best paying languages in the Czech republic
- The maximum salary
- Is it better to be a data scientist or a web developer to make more money with Python?
- How does working in different organizations influence the salary?
- How does working with different databases influence the salary?
- My own salary
Why the statistics make perfect sense
I should make some things clear at the beginning. You know - so that we can all misinterpret the data in the same way. I tried my best not to show data that are simply not there, but you know how it goes. If you need a chart with your favorite language on top, buy my book and I am happy to make it.
So anyways, the journey begins with the The Public 2020 Stack Overflow Developer Survey Results which I am taking as the one and only source for all my charts. The dataset has 33447 salary data points which probably isn't that many given that there are probably around 25 million software developers in the world. You have been warned.
Besides the usual problems with self-reporting where some people could mix up the gross and net salaries (not everybody pays taxes), the demographic will obviously reflect the demographic of Stack Overflow. I don't even remember if I am somewhere in the dataset, but even if I am, the data are outdated already. You will see later.
Being too lazy to look for more sources Having only the Stack Overflow survey data available, let's examine two more problems regarding the salary data based on programming languages.
Not all languages are created equal. Some of them simply don't deserve to be in the survey. I know, bummer. All in all, there are only 25 languages mentioned in the responses with salary data points (and some, like HTML/CSS or Bash/Powershell are grouped into one). The notable missing languages are Elixir and Clojure which I would really like to see in the next survey.
The last problem is a bit peculiar and makes creating the charts for the best paying languages a bit difficult. The salary is reported for all the languages used together. That means that if a respondent worked with Java and JavaScript, we don't know to which language to attribute the money. Sometimes, this is fine, but could be dangerous for languages like HTML and CSS, or even scripting languages like Perl or Python that are used in addition to a different main language. But don't worry. I solved the problem by completely ignoring it. (The reported salary is accounted to all the mentioned languages)
You can follow along and make even less-relevant charts yourself, as I am sharing my Jupyter notebook with all the plots and pandas.
The salary investigation (yes, I call it investigation, thanks for asking) is tracked using a Jupyter notebook so that you can see how the charts were made and make your own. You can find it in the stribny/salaries repo.
The best paying languages in the world
I forgot to tell you. When I looked at the maximum salaries reported (I am a naturaly curious person), I found out that the dataset has some 255 salaries over 1,500,000, with an artificial cap of 2,000,000. That's probably because some people think that one month has the same number of days as one year. Sigh. I could go and try to fix the data, but instead I decided to wipe out top 5 % entries from the universe. You are welcome.
Another thing. I decided to call the number of responses opportunities. That's because my next article will be about me becoming a recruiter. Just kidding.
High and low paid opportunities
Let's see some charts! The first chart shows the number of high and low-paid opportunities per programming language. You might now want to know what I consider to be a high-paying job. It is a job with over 100,000 USD/year salary. This number should work for most people. If you think that a salary of 100,000 USD/year is low, then you probably have enough money and time to make your own chart.
The average salary in the world by a programming language used
The median salary in the world by a programming language used
The best paying languages among the highest salaries
I wanted to know what happens if we look only at jobs with high pay... The interesting thing is that once low paying jobs are out of the picture, the difference between languages starts to disappear.
The best paying languages outside of the USA
I call this chart "not everyone is an American".
The best paying languages in the EU
This is a new type of chart that combines the median salary with the number of opportunities. Don't forget the exact numbers of responses opportunities are inflated as I duplicated responses to attribute languages individually.
The best paying languages in India
I put India on the map in 2011. Or rather I put myself in India in 2011. Either way, I was shoked. And because I can't recommend India for the job opportunities, I can at least recommend it for the adventure!
The best paying languages in the Czech republic
I am Czech so this is a chart close to my heart wallet. Spoiler alert: we are not doing great. As a foreigner, you might at least enjoy a visit.
The maximum salary
After I successfully removed all the suspicious high salaries, the chart is still suspicious.
Is it better to be a data scientist or a web developer to make more money with Python?
The answer is neither.
How does working in different organizations influence the salary?
It turns out that yes, the bigger the playground, the more monopoly money.
How does working with different databases influence the salary?
Tired of looking at the same languages over and over? Let's try databases instead.
My salary
I am now a freelance developer from the Czech Republic who has been mainly focused on Python and JavaScript. But it doesn't matter. For the last couple of months I have been working full-time on my book. As a wannabe-best-selling author my salary has been exactly 0. Z-e-r-o. Nada.
Disappointed? #metoo
And with that terrible news, it is time to end.
Last updated on 15.3.2021.