I find the average salary, especially for things like PHP, to be absolutely meaningless. There are PHP shops where people are just tweaking wordpress templates, and there are PHP devs who work for companies like Facebook. These groups have a huge difference in salary.
I'd love to see this data broken down into percentiles- what to the top 10% of positions in each language break down to? What about the bottom 10%?
Not to mention that the article at the end says that is mixed with multiple countries including China etc. This chart is meaningless if you are mixing countries with different costs of living. A PHP dev even making 20K USD/Year in an Asian country is much better off than a dev making 70K in US (on an average).
Came to comment about PHP specifically. Even in my local town, a PHP salary can be anything from a blog mangler @ £20K to a bespoke tool developer @ £100K, both just happening to share the same programming language.
It's got a big range, but I bailed on the language years ago because I got sick of sifting through all the laughably-low salaries. I'd still do PHP if someone hired me for it (at non-joke rates, plus more on top for working with tech that's got the kind of trajectory and reputation PHP does) but I absolutely avoid looking at PHP jobs when searching, specifically because the floor on wages is so much lower than most languages so there are a ton of garbage jobs out there.
Certainly I'd skip right past a PHP job listing that didn't have an eye-catching salary listed prominently on it. Not having salary listed in general is annoying, but with most languages I can make a reasonable guess at where it'll be based on the company, location, and tech stack, and not be too far off. PHP, who knows. That "Senior Developer" position might turn out to only have a hiring budget of $60k (hahahaha good fucking luck with that). Or it might be $120k. Or $180k. PHP salaries are all over the place.
Yeah I can relate- I run a couple of open source PHP projects that are fairly popular but other than that have mostly moved on to other languages. Salary is part of it, but I also found that there were a lot of characters in the PHP community who made dealing with the language less than pleasant.
Agree. I’ve been making six figures (US$) working mainly with PHP for over a decade. Companies pay for results and business value, not for language expertise. If they happen to have a pile of PHP then I can live with that. Even maintaining corporate Wordpress sites is lucrative, and lots of big rich companies use WP.
I know people who have very basic PHP skills who make very little money, but that’s a function of their lack of technical skills and business experience, not the language.
The fact that Java and c++ are not on this list should tell you something about the methodology. What language do you think all of the $700K FANG engineers are using? Ruby?
This is heavily biased by the dataset, I suspect. I wouldn't be a bit surprised if it's just a list of which languages have high-paying employers who put salary in their job listings. That a crypto thing is top of the list, I take as (soft) evidence in favor of that suspicion.
Anyway, what everyone really wants to know is where some sweet spot of current-comp, comp-five-years-from-now, and availability-of-jobs, lies. I don't think this list helps much with that.
Java/JVM and C#/.NET are still huge parts of the enterprise. Take a look at Fortune 500 companies and you'll get a very different picture of the popularity of various language versus the median salaries paid to those using them.
While I appreciate the effort and the write-up, this methodology has a few flaws.
1) As you state, most high salary positions don't publish their salaries publicly, so a website with developer submitted salaries like levels.fyi provides better user metrics.
2) Most of the results on the "top ruby" link [1] are from dice.com... which then links to another job board [2], jobot.com. The post from jobot.com appears to be from a contingency recruiter with no company name stated. The lack of transparency there is a bit unsettling, but it might be accurate??
3) The only post in the top 20 that is actually from the hiring company is for a "contract" position, where the "salary" is the contractor hourly rate annualized, ie: doesn't cover health insurance, self-employment taxes, etc... so that "salary" would be much less apples-to-apples with a full-time position.
I am the author, and I am 100% with you. This data is from scrapped job offers, as said in the article, not from devs posting their current salary.
Also some offers have lack of transparency as you said, and some also have malformed salary ranges (which I try to clean). So yeah, this is the exact result of those scraped job offers, but take it with a grain of salt.
Totally makes sense. Is there any way for your scanner to filter on "job req from direct company", which would filter out reqs from contingency recruiters?
Hmm could try something, Glassdoor, Indeed and Dice have a lot of them, so I could filter out them or put less weigth on their job offers.
What also needs to be solved, is, what is considered to be a 'Python' job for example. If python is a on a job 'tag', I count it, but many offers have many tags with many different languages and frameworks, and that is no good for the study. Maybe in future, I would just count what languages/stack is specified on the title. Just saying.
Thanks for your comments, I would try to improve the next study I make.
Solidity being highest is interesting, I suspect its because in boom times, crappy projects are willing to throw any amount of money to get development in so they can show progress and cash out. So I'd question the quality and longevity of those jobs.
Most of the crappy projects are largely cut/paste copies of existing projects and there's always someone willing to cut/paste for lower rates.
The big thing with actual development in Solidity is that you can't just google for a lot of your issues. Documentation sucks and for any novel project there aren't any answers on stackoverflow. You've got to work out best practices for yourself, sometimes the hard way. It's better than it was, but it's still on you and your personal network to figure most of it out.
I don't think crappy projects dominate the high solidity comps, most of the crappy projects I think pay average dev comps and/or a cut of proceeds.
The high paying jobs are the ones that require an intimate understanding of EVM, and usually DeFi protocol design, or really competitive fields like MEV. These will be around regardless of "boom times" and require a highly specialized skillset.
Without adjusting for cost of living this kind of analysis is going to get heavily skewed in favor of the language du jour favored in select tech areas where the cost of living, and average income for almost everyone, is drastically higher. Additionally, many of those same cutting-edge technologies are not going to be represented in many lower cost-of-living areas, where there are still lots of opportunities using more mature technologies (think C# for business applications, or C for industrial applications). This will pull the averages down for those mature technologies, even though they represent incomes that may actually be higher relative to the cost of living.
Yes, I know it would be nice. Some languages like haskell have so low volume of job offers with specified salary that is quite meaningless. The others have enough volume I would say. I would think though a way to merge that both streams of data.
I'd love to see this data broken down into percentiles- what to the top 10% of positions in each language break down to? What about the bottom 10%?