The Solidity Engineer Salary is a Myth
Updated: Jun 3
Is gold in your future if you study blockchain?
There is no shortcut to a high solidity developer salary
This might sound funny coming from a blockchain bootcamp, but it’s true.
It’s not that you can’t improve your blockchain engineer salary. You absolutely can. But the problem is, it’s way harder than taking an online course and sticking a few projects on your GitHub.
Think about it this way. Imagine you are hiring an accountant to handle your business’ books. A candidate proudly strolls up to your desk with a certificate and tells you he has twelve weeks of experience.
Would you hire this person? Of course not!
So what makes you think a web3 company would hire an engineer with equivalent credentials? Your journey to a high paying blockchain engineer salary job does not happen on the scale of weeks. That’s just not how the world works.
Hey but wait a second! People have “broken into web3” . Who am I to say it’s not worth it? Of course it’s possible. But what I’m encouraging you to do is run a cold, data driven cost-benefit analysis of the effort you need to put in and the outcome you expect.
You can get a blockchain job easily in ten weeks. Learn how to barely scrap an NFT together then sell your services on Fiverr for its eponymous price tag. Now you have a web3 job. But is it the one you wanted?
Not all blockchain engineering jobs are created equal. There is a vast difference between a low-end developer on Fiverr and an elite dev making a huge salary.
There is so much misunderstanding about web3 salaries out there. The first misunderstanding we need to correct is whether blockchain salaries are actually high.
Bad data science and the myth of Solidity developer salaries
Google around and you’ll see tables comparing solidity engineer salaries to other variants of software specialties sorted by salary — with blockchain engineers on top of course, making somewhere between $120,00 to $150,000 on average.
That’s not the average salary of a “solidity engineer.” That’s the average salary of an employed solidity engineer.
Studying solidity and adding it as a skill on LinkedIn does not make you an employed solidity engineer. I roughly estimate that for every 10 engineers who know solidity reasonably well (I.e. can score 25% or higher on our very difficult test), only 1-3 of them make money from being a web3 engineer.
The data completely leaves out the huge pool of solidity engineers who do not have jobs in the field. What would happen to the numbers if we averaged their salaries in? The average salary would plummet of course.
What other variables might account for solidity developer salaries being higher? To know that “solidity” is the cause of their higher salaries, we have to isolate the well known correlation that the more years of experience an engineer has, the more they get paid. Usually, it’s the experienced engineers who have the luxury and skills to teach themselves an unusual subject. This forces web3 companies to compete against a senior web2 engineer’s salary, which oddly enough, is often between $120,000 and $150,000. So much for “blockchain” being the factor behind the higher salary right?
Here’s another confounding variable: blockchain engineers often bring multiple skills to the table. If you can program a good frontend webapp and program a good smart contract, it stands to reason you can demand a higher salary right? What if you have traditional cybersecurity training and web3 development skills? You can see where I’m going with this.
Was solidity (or rust for that matter), the cause of the salary increase or was it the combination of skills? Well, I don’t know, but the burden of proof is on the person claiming (or strongly implying) that solidity engineer salaries are higher because of that specific skill set. To make this claim, you need to segment out the engineers who only know solidity and compare them to engineers who only know another stack, then compare them holding their years of experience and location equal.
Now, of course it would be silly for me to say there is no correlation between having blockchain skills and salary. But there are so many confounding factors, that taking in totality, I suspect the true “salary premium” for knowing blockchain is somewhere between 10-20%. That’s a nice salary bump, but you could also accomplish it by interviewing better and negotiating better — arguably more useful career skills than picking up another tech stack.
By the way, if you want to get good at intelligently questioning data science without a statistics or data science degree, here are three books I recommend.
Putting the high solidity engineer salary into perspective
Claiming a $150,000 salary is “high” is very misleading. It’s high in an absolute sense, but compared to general software development, it’s an easy salary to obtain. Entry level engineers in mid-level tech companies make more than that.
Don’t believe me? Let’s let the data speak for itself shall we?
We can get a sense of the distribution of salaries by looking at entry to mid level software developer jobs at established but not elite tech companies. The most reliable source online for this is levels.fyi.
Lowest level: $100,000
Mid level: $150,000
Lowest level: $83,000
Mid level: $140,000
Lowest level: $90,000
Mid level: $150,000
You get the point?
$150,000 isn’t high. It’s what you earn after 4-5 years as a software engineer in a company so boring Warren Buffet would invest in it.
The aforementioned companies do not have software as their main revenue driver, so they don’t pay software engineers as much. But if you look at tech companies, entry level salaries start at $150,000 and then the sky's the limit after that. One person I mentored got his first job earning $200,000 working for a proper tech company, and it’s one many of you probably don’t know of or can’t name off the top of your head.
Now go back to levels.fyi and plug in some more established tech company names if your eyes aren’t green with envy yet.
Web2 salaries are objectively high. There is no need to look to web3 for a high salary.
If money is the goal, grind leetcode
If money is purely your goal, master algorithm and system architecture interview questions. You’ll easily get a good job at one of the boring companies listed above.
Master means you can solve most medium difficulty problems in 30 minutes without mistakes, and handling every corner case. You should be able to code a perfect solution to easy problems in 15 minutes. And your variables need to be well named. This will put you in a position where you can easily secure multiple job offers and get companies to bid against each other for you.
Even if you are terrible at negotiating, the competing offers will handle that for you.
Getting these roles is straightforward. Practice algorithmic interview questions like crazy, and when you are ready, send a cold DM to some recruiters at these companies and show them some evidence on leetcode or hackerrank that you really know the stuff and have a good shot at passing the interview. The recruiter, who stands to get a nice bonus if you pass, so they will pass your profile along. Pass the interview, and boom. Now you are rich.
Alright that’s cool, but everybody hates algorithmic interview questions. Is blockchain a solution to this?
No it isn’t. To make your application stand out from the hordes of applicants who have all written ERC20 tokens and put an NFT on Opensea, you’re going to have to put in work that outshines them by a large margin. And that work is going to quickly become as long and laborious as practicing algorithmic interview questions. But the outcome is a lot less guaranteed because web3 is a very volatile space.
Grinding leetcode is an established path to a high income. It’s life’s ultimate cheat code. The fact that everyone hates doing it is precisely why it will remain life’s ultimate cheat code. If you are willing to do what other people aren’t, you will get the salaries they don’t. Plain and simple.
Yes, leetcode can be hard (no pun intended). But it’s far easier than passing the bar for lawyers or paying the expensive tuition for medical school and then going through a grueling and humiliating internship.
Learning a language does not make you a developer
Looking back at the six figures quoted above, do you think those companies are paying that kind of money because those engineers took a few Java tutorials and completed an online course? Of course not! Employers who pay a lot of money expect comprehensive mastery, not a bullet point on your resume that claims you know a programming language.
Blockchain skill will not magically solve visa issues
On the subject of money, let’s talk about something that is incredibly unfair in the current world. People born into developed nations with mediocre development skills can make a large salary (even accounting for increased living expenses) compared to skilled engineers in developing countries. It’s quite common for an engineer in Southeast Asia to make between $700 to $1,800 per month. Even if taxes and living expenses were zero, someone making $8,000 per month and losing 70% of it to taxes and living expenses still comes out ahead at $2,400 saved. So much for saving money by living overseas!
Truly talented engineers living in developing nations have a solidity engineer salary ceiling, partly enforced by cultural norms around what engineers get paid, and partly enforced by less available capital. This leads to a vicious cycle of less engineering investment, less innovation, and slower capital growth.
There has been a fair amount of uninformed chatter about remote work putting engineers from developed nations out of work in favor of skilled overseas workers. It’s not that simple. If an engineer in America steals company intellectual property (IP), the company can sue them into homelessness and make it extremely hard to get employed again. If an overseas engineer steals company IP, there’s not much the company can do about it. The company might not see saving $60,000 as worth the risk.
Applying for H1B visas is expensive, slow, and uncertain. I have never encountered a company with less than 20 employees that hired someone on an H1B visa.
Then there are cultural issues, which are very, very real. In America, it’s considered extremely inappropriate to say “people of such and such a country are lazy and uneducated.” But in many Asian nations, that’s considered a normal thing to say. Imagine being the manager of HR and dealing with a ruckus of a worker saying something like that in a video call meeting then worrying about a negative review being posted on Glassdoor. Of course, there is no guarantee this will happen, but the risk of it happening increases the cost of hiring someone from a very different culture. Many Americans somewhat blindly believe that the world shares their metropolitan views of diversity. But experienced hiring managers who have worked internationally know this is not the case, and is only one of dozens of issues that can arise. Culture is hard to integrate, even if both parties try hard. There is a reason 80% of company mergers fail. Even people in the same country and same industry have a hard time reconciling culture sometimes!
And don’t underestimate timezones. In an ideal world, teams can pass tasks around asynchronously and one person works on it at night, while another team works on it the next day. In reality, if you need a key detail while another team member is asleep, this tiny inconvenience can compound into a productivity killer. The larger the team, the more likely this is to happen.
Saving $500,000 and then having routine misunderstandings cause team productivity plummet to zero isn’t worth it.
This isn’t to say you can’t make it work. But it gets harder as the organization gets larger, and the effort put into making it work has a real business cost that can easily offset the money saved on payroll.
As an aside, if you are a small company, I think hiring overseas is smart. Your biggest risk is not time zones or culture, but your biggest client defaulting on their invoices, or investors not delivering checks they promised. The risks I’ve outlined above are not existential for you. But a large company cannot respond as nimbly to cultural and IP risks. And sadly, it’s the large companies that pay the most.
For the overseas workers, I’m not saying blockchain won’t help make you more competitive and differentiated. I am saying it’s not a magic bullet that will nullify the issues I’ve outlined above. Your application will still be at a serious disadvantage that blockchain skill does not outweigh.
The reason I’m including this section is because our school gets a fair amount of applicants with the hope that what we teach will help them bypass this awful and unfair disadvantage. It is possible to overcome this barrier, but that itself is such an uphill battle it demands a service of its own.
Here is my general advice to overseas workers seeking to get their share of the high western salaries. First step: you must absolutely crush the algorithmic interview questions. You are held to a higher standard than locals, so show no mercy to yourself until you can eat leetcode for breakfast. Second, if you can get admitted to an accredited school in the west, getting a visa will be a lot easier.
Companies can more easily hire you for an internship than having to get a more difficult visa for you. Crush that internship. Outwork the locals and make them look lazy in comparison. Your manager won’t give HR any peace until they hire you. You are a no-risk candidate to her, and she’s smart enough to not let that pass without a serious fight.
The company can easily justify the expense of getting your visa then. Now there is an obvious flaw with this strategy: going to a western university is usually correlated with being born into an affluent family. So if that option is not available to you, crush the interview questions and work on a reputable platform like Turing, Toptal, or Gun.io. If you can contract for recognized brands, your career strength will compound until you can finally tip the scales in your favor.
I know, easy for me to say right, having a western citizenship? Well, think about it this way. I could run targeted ads to you (overseas engineers) promising western riches if only you take my class. Then I would stick you in a large class (scalability for the win) where you never get your questions answered, and when you don’t see results, blame you for not trying hard enough or not applying to enough jobs.
I’d make a lot of money doing that too. So I lose money by being this brutally honest with you. Someone is going to post an angry comment about how I’m crushing people’s dreams. Deal with it. I hired H1B workers in Silicon Valley. Now I live in Southeast Asia and have spent blood sweat and tears trying to help my friends get a slice of the western pie. It’s ruthlessly hard even with the clout I’m already privileged with.
It is possible. I’ve just given you step by step instructions for how to do it. But it is hard. And blockchain doesn’t make the difficulty magically go away or even go down an order of magnitude for that matter. You can have a success story. They happen. You might even get lucky and accomplish your goals a lot sooner. But it is hard.
Trust me, I of all people should know.
People who are genuinely interested will outcompete you
Even if you aren’t deterred by all of the above arguments, if you enter blockchain with the intent of making a high salary, you will still lose in the end.
In a competition for limited roles, the one who is doing the hiring will only pick one out of the dozens of candidates who apply. The most qualified candidate will generally be the one who studied the hardest and invested the most time into extracurricular web3 projects. People who are interested in the subject for its own sake will be able to study harder and build longer than those who are just motivated by money. Those motivated by money ask “when will this be over?” Those interested in blockchain for its own sake ask “what will I learn next?” Which motivation do you think will get you further and result in a more competitive candidate?
Learning Solidity as a get-rich-quick scheme
Given that Solidity developer salaries are objectively not “high” (in a relative sense), why are so many educators emphasizing that they are?
Ah yes, “just study Solidity for four months and get a $100,000 salary” they say.
That’s not gonna happen if your first programming job is Solidity.
Maybe if you have enough privilege to not need to work for an extended time, a degree in physics from a top university, and an IQ of 160, maybe you can get your six figure Solidity developer salary on the first go, but that’s not a template most people can follow.
There have been so many get rich quick schemes in crypto and programmers (or people with an interest in programming) are not immune to it. Now of course, to fool most would-be programmers, you can’t promise tokens going to the moon or 1,000% returns. The market for scamming people like that is a bit saturated and unoriginal now.
You need to be more subtle.
You need to promise high returns for what seems like a comparatively small amount of work (i.e. “just take my course”). That’s how even smart people get fooled into get-rich-quick schemes.
They’re just sold as “get rich quick, but not that rich and not that quick.”
It probably didn’t go unnoticed that RareSkills makes money teaching blockchain, so what’s the deal here? There are better reasons than salary to study blockchain.
Legitimate reasons to study blockchain engineering
Picking up a new but different skill will make you a better programmer in general
Studying LISP is pretty “useless.” Programming in x86 assembly, or worse brainf**k, won’t land you a high paying job.
But they will do something even better. They let you look at your own knowledge from the outside. If you can only think in terms of objects and methods and singletons and static classes, you won’t even recognize that you are doing that.
But if you know different high level languages for modeling a problem, and you know how a CPU is actually modeling the problem, you will be able to tackle real problems more holistically. You will have a better set of first principles to reason about the engineering challenges you face.
And that will make you a more highly paid programmer.
Some midwits mock Ethereum smart contract engineers for going to extreme lengths to save a few dozen bytes in smart contracts, while not realizing that same set of skills and mindset transfers well to building ultra-scale systems.
Yes, saving a few hundred bytes doesn’t matter in your small world of 10 transactions per second (tps), but it does on systems sustaining 100,000 tps.
In whiteboard interview questions, interviewers ask “how can you make the big O runtime smaller.” That’s only an imperfect reflection of reality. Any (informed) knucklehead can look up a glossary of algorithms to find the most efficient one for the job. But knowing how to model data compactly takes practice.
And smart contract engineers are pretty practiced at that.
Capturing black swans
Let’s look at this risk management Nassim Taleb style. If you study blockchain and blockchain turns out to be a useless fad, you lose 4 months to a year. It’s not really a total loss, because the knowledge transfers well to subjects that are currently accepted as “useful.”
But then there’s the alternative. There’s a real possibility blockchain becomes a fundamental part of life. In that future, the one year you invested suddenly puts you at an extreme advantage.
An informed life is largely made up of choices that have high upside and low downside. Doesn’t mastering blockchain fit this risk profile?
You are more likely to work with people who have a passion for learning
Who you work with is going to have a huge influence on your happiness in life. One advantage to working in a nascent space is it’s full of curious and passionate people who are comfortable taking risks to a certain degree. Now there’s absolutely nothing wrong with optimizing your career for stability. We all have different preferences. But if you fall into the category of people who enjoy the environment that new fields provide, then you will find your work to be more fulfilling on average.
Let’s discuss why the technology might be genuinely interesting.
You find the technology genuinely interesting
Some uninformed cynic will say studying blockchain for technology is like reading playboy for the articles. Everyone is really in it for the money right?
It really is more fulfilling to study a technology that is “owned” by collective humanity than owned by a large corporation. I’m not knocking platforms like AWS. The engineering genius that went into them is astonishing. But it lacks the timeless soul of pure algorithms living in real and useful applications.
Why does $100 wine usually taste better than $2.50 wine they sell for $15 on an economy airplane ride even though both taste like sour grape juice? I can’t articulate it, and unless you are a sommelier, you can’t articulate it either. But we both know the difference is real.
(For those of you trying to catch me on a technicality in my analogy that wine tasters get fooled while blindfolded, I can detect United Airlines economy wine in a blind test — it has the distinctive characteristic of making my jaw hurt while swallowing it).
Blockchain doesn’t have to be “better” than other models of computation. Being “different but useful” is good enough and a welcome break from building the same application for the 12th time. Getting bored with the same old same old and working on something new is more than a good enough reason to study blockchain, as long as you are honest with your motivations and keep your financial expectations in check.
As much as barely informed cynics prattle that blockchain is “just an inefficient SQL” that doesn’t make the claim correct.
From a distributed systems standpoint, there is nothing that says “Byzantine fault tolerance necessitates an order of magnitude less scalability.”
Let that sync in. (See what I did there?)
We know so little about distributed systems that we don’t know the theoretical performance gap between decentralized compute and centralized compute — or even if that gap is necessarily consequential!
Yeah, that seems like a big hole in our collective knowledge, doesn’t it? Welcome to the forefront of innovation! Things are exciting here, and not because prices swing like crazy!
In a practical sense, yes. Current centralized computers are orders of magnitude more efficient. But it’s also received orders of magnitude more research funding. Don’t confuse the outcome of capital investment with theoretical limits.
You find the ecosystem genuinely interesting
Blockchain has an intrinsic appeal to polymaths. Where else are you going to find such a strong overlap of distributed systems, cryptography, economics, behavioral science, game theory, compilers, government policy, and language design all in one place?
Thinking about how all these domains interact with each other is fun!
Instead of learning random topics for the fun of it, you can learn topics that seem initially disparate but combined make you a stronger contributor to the web3 space.
This unexplored map leads to a bigger opportunity.
You have a realistic shot at becoming a thought leader
You’re probably not going to be a thought leader in an established technology field. The leaders are too entrenched and there is too much ground to cover. In blockchain, or any nascent field for that matter, you can come up with industry leading solutions as a relatively normal person (assuming you are smart, motivated, and have the time). Consider this, a pair of students in the RareSkills solidity bootcamp developed a presale / airdrop solution in solidity that outperformed the “established” solutions of ECDSA and Merkle Trees. (The mirror article even trended on hackernoon for a time despite being highly technical).
In case you sped through the sentence, let me emphasize this: students, not MIT professors!
This does mean you have to pick your niche in blockchain carefully. The resources and tools for NFTs are oversaturated right now. Most DeFi solutions are some variation of over-collateralized loans powered by an oracle. You won’t be a thought leader doing what everyone else is doing.
Look for where the literature is sparse but plausibly useful.
This is how I (Jeffrey) established myself in blockchain. I noticed there were no resources online for studying gas optimization in Ethereum, so I created a Udemy course. After a short time, it became a bestseller that appears at the top of the search results for “solidity.” As I looked around, I noticed it wasn’t just gas optimization that was under-explained, pretty much every topic that isn’t about how to make NFTs, use DeFi in a basic way, or program solidity was under-explained too. So now RareSkills is going after those topics full bore.
We aren’t just focusing on expert topics to be cool. If the blockchain space is going to move forward, it needs innovative engineers who understand the technology thoroughly at a fundamental, foundational, and theoretical level. Only from that vantage point, they can notice what isn’t working and come up with sound solutions for it.
Graduating yet another engineer who can build yet another NFT minting website, while a good start, doesn’t do anything for getting web3 adopted in a meaningful way.
You really might change the world
Let’s zoom out and not forget that Bitcoin is really revolutionary. I would argue stablecoins are on their way to disrupting a lot of finance. They sure make cross border payments and foreign exchange a lot easier. NFTs and DeFi, while very immature, have only given us a small taste of what they can accomplish. We don’t know what the next breakthrough will be, but the industry of money is pretty fundamental to society, maybe even human nature. Not much has changed in terms of how we do money over the past decades, if not centuries. But if it’s going to be radically changed in a good way, it will be because of blockchain. And you have a zero percent chance of being part of that change if you don’t know it.
Coming to blockchain for the purpose of salary is a flawed career strategy. If you qualify for the high paying jobs in blockchain, you will also qualify for an equally high (or higher) paying job in web2. High salary jobs require high skill, and there is no shortcut to that. For all of its democratizing power, blockchain does not yet solve the issue of low salaries for similar jobs in developing nations.
However, smart people are passionate about it for good reasons besides money. It’s a legitimately exciting way to do computer science. Although salaries aren’t as high as many sources think they are, they still provide asymmetric upside in other ways.
We don’t promise you a higher salary. We promise you something better.