Blockchain Developer Roadmap 2022 | A Guide To Learning Blockchain Development
This blockchain developer roadmap lays out a framework for learning blockchain development in 2022. It should provide a wealth of resources and information for aspiring blockchain developers.
- Blockchain Developer Roadmap Video
- Understanding The Moving Parts
- Frontend Web3 vs Backend Smart Contracts
- Choosing A Blockchain
- Should I Learn Solidity As A First Language
- Blockchain Development Toolset
- Free Resources To Learn
- Testnet Playgrounds
- Open Source Projects
- Blockchain Jobs
- Blockchain Developer Community
Blockchain Developer Roadmap
Understanding The Moving Parts
There are a number of roles within the blockchain sector and an understanding of what each of these does will help gauge where you fit in. Note that this article is mainly focused on frontend web3 development and backend smart contract development.
- Smart Contract Developer – Working on backend smart contracts developing the core number crunching functions that need to be perfect with no room for bugs. Smart contract developers will usually work in Solidity for anything based on Ethereum or Rust for Solana.
- Smart Contract Auditor – A focus on security and preventing loss of funds. Auditors will assess code, look for edge cases and use tools such as fuzzers to perform assessments.
- Web Designer – This is often the same role as the web3 developer but someone with a creative skillset and experience with graphic design and CSS can add a lot of value.
- UX / CRO Roles – User experience and conversion rate optimisation is often overlooked in the DeFi space. As time moves on and the industry becomes more competitive this will become key and there’s opportunities here for many projects to improve their conversion flow and usability.
- Miners / Node Operators – Engineering based role managing hardware and core client software to enable the decentralised networks to operate. Many DeFi projects rely on existing infrastructure such as Infura but as they scale having independent infrastructure can be advantageous.
- Marketing – Great tech isn’t useful if no one knows about it. A good marketing (budget) and customer acquisition model is key to growing successfully. Marketing professionals can be split into data driven media buyers and creative PR types. Both are a valuable commodity in a noisy industry built on hype and attention.
- Legal Advisors – For projects operating in the US particularly it’s important to gain some legal counsel. The SEC has adopted a stance where it’s trying to assert and exercise authority in the space. Compliance and meeting regulatory requirements is an ongoing challenge.
- Social Media Manager – One of the first hires most projects take on is a social media manager because handling the “sir, when lambo” guys becomes a full time job in itself.
- Investment Analysts & Traders – There are plenty of research and trading roles available at the ever expanding list of VC’s and Prop trading firms in the industry.
Frontend Web3 vs Backend Smart Contracts
Much like in traditional web development key roles are normally divided into frontend and backend teams. There are some key differences however. Frontend web3 developers will usually be working on much more code heavy projects where design is an afterthought.
This is Curve, the leading DeFi platform by TVL in the world with over $22B invested.
Obviously Curve looks like it was created in the 1990’s as a design choice but throughout the industry there is less attention to detail and user experience within DeFi platforms compared to web design or mobile app development work.
Backend development of smart contracts is very different to working with databases and micro services as well. There is no room for bugs, so each line of code needs to be meticulously considered before being committed. I’ve heard it being compared to more like hardware or circuit board development than other software.
The reason for this is that once a smart contract is deployed it can’t be updated (in most cases). You can’t just roll out a quick hot fix and restart the servers if something needs changing. Then there’s also the fact that the code is handling and storing digital assets which will be targeted by hackers if the protocol becomes popular.
Don’t let any of this put you off however. If you can code a website then with a bit of practice you’ll be able to build a decentralised application and deploy it to the blockchain. Like anything else, practice makes perfect and what is intimidating at first becomes second nature after enough reiterations.
Choosing A Blockchain
Going into 2022 the main choice developers need to make is do they want to develop on Solana or everything else. That’s because everything else with traction is based on Ethereum and runs the EVM (Ethereum Virtual Machine). There’s the Ethereum layer 1 which has become excessively expensive for most developers with contract deployment costs currently running into thousands of dollars. A solution to this is a whole host of 3rd party projects which use the same code base and EVM as Ethereum (so Solidity code works on those too) but with varying levels of decentralisation.
- Binance Smart Chain
- Polygon Matic
- HECO Huboi Eco Chain
Transaction fees on these layer 2’s and alternate layer 1’s are usually much cheaper with contract deployment costing just a few cents in some cases.
My recommendation is that if you don’t have a strong reason to develop on Solana then develop with Solidity as it’ll give you far more options to deploy across multiple networks now and in the future.
Strong reasons for developing on Solana might be specifically targeting certain VC’s in the space (Alameda & Co) or requiring the high transaction throughput for a particular application.
If you don’t care about decentralisation then Binance Smart Chain is a popular and cheap to use network, if you do and perhaps you should then the Ethereum Layer 2’s will likely gain a lot of traction in 2022 and ZKsync is one to watch and build on.
Should I Learn Solidity As A First Language
Blockchain Development Toolset
Having the right tools for the job is half the battle, the other half is mastering how to use them.
IDE (Integrated Development Environment)
For smart contracts when starting out https://remix.ethereum.org has everything you need in one place. You can use it as an online text editor, compile and debug contracts and even migrate code and execute smart contract functions via injected web3.
Once a blockchain developer starts to take on more complex projects with dependencies and multiple files it’s often worth moving to a offline locally hosted solution. There are two strong options here: Hardhat and Truffle.
Truffle was the original node js application that has been used for many years to compile and migrate Solidity code to the blockchain. Hardhat is newer and has some design improvements and feature benefits. I would probably recommend Hardhat but use both myself on a regular basis.
For web3 frontends there are also two options and this normally overlaps with the backend decision. There’s the web3.js library and the ethers.js library. Similarly web3.js has been used for year and is battle tested. Ethers.js is newer, more refined and is normally used alongside Hardhat.
Which you choose is a personal decision and both do the same job in only very subtly different ways.
Once you have Truffle Suite or Hardhat installed you’ll also want a text editor to open up code repositories and work on the code.
The obvious choice here is VS Code from Microsoft.
Browser & Wallet
You’ll also need a web browser and a digital wallet to hold funds and pay transaction fees.
Google’s Chrome browser and Metamask again are obvious choices. Metamask can be configured to work with any EVM compatible blockchain by adding networks. For Solana development there is the excellent Phantom App.
A terminal is like an old school msdos prompt where you can run things from a command line. 95% of blockchain stuff can be run on Windows, Mac or Linux. If you are a windows user then you can use the Powershell terminal, just hit the windows key and type powershell to launch a terminal. Occasionally node software can only be run on Linux or via docker which will require either a cloud instance or a VM like WSL (Windows subsystem for Linux).
I code primarily in Windows and use Linux via WSL, if I had more time and patience I’d probably use Linux for everything.
A couple of options here which kind of goes back to the truffle vs hardhat choice. Infura is tried and tested and been around for ages. Alchemy is the new kid on the block with some nice shiny features. Both have free tier usages which will suffice the majority of blockchain projects.
Free Resources To Learn Blockchain Development
Here are some excellent resources to help learn Solidity and Web3 development
This is a gamified tutorial focused on smart contract development. It includes aspects of NFT’s, Web3 and gas optimisation. I completed this course despite already having a good understanding of Solidity simply because it was fun and good practice.
Capture The Ether
This is a little dated now but provides an excellent primer on smart contract security. Each challenge introduces a new way in which you the hacker needs to exploit a smart contract. You’ll need to use Solidity and remix to connect to the live game which runs on a testnet.
As you get further in to the game it becomes increasingly challenging and focused on strange Solidity and EVM behaviours.
Note that a lot of the integer overflows have been fixed with the safemath-esque integration in v8 of the Solididty compiler.
Read The Docs
Ethereum has great documentation and I find myself referring back to it often. It’s worth having a browse through and more in depth study if you get a chance to do a deep dive.
Plug! Did I mention I make videos and you should subscribe? https://www.youtube.com/c/JamesBachini
Other arguably better productions include this list of the 45 best crypto influencers.
Notable channels for developers include dApp university, Eat The Blocks, Eth Global and Alysia Tech.
For Solana development there is the excellent: https://solana.com/developers
Also there’s SolHack which provides tutorials broken down into manageable bite sized modules with an active community.
One intimidating thing when starting out working with blockchain development is the fear of losing money. This can be overcome initially at least by building on testnets. Every blockchain will have a testnet associated with it, Ethereum has about 5 different ones.
A testnet is a duplicate of the main network (called mainnet) which has free worthless tokens. These are setup so developers can experiment and deploy and test contracts with no financial or security implications.
Note that you want to use a different wallet when working with programmatic transactions or testnet funds. This helps avoid the situation where private keys are pushed to public Github repositories.
For more information on working with testnets check out this article: Testnet Faucets
Hackathons are a great way to engage with other developers in the blockchain community. It can also be a good place to meet VC’s and investors if you are looking to raise capital.
You can also make some good money from blockchain hackathons. I’ve had some good results in the past which have brought in thousands of dollars worth of tokens in prizes.
Note that some hackathons are used more as a grant mechanism with winning projects being developed months prior to the start of the hackathon so check first as this limits the chances of winning if you are interested in prizes and doing a weekend entry in your free time.
Try to build and learn useful things, meet like minded people and keep it fun.
Open Source Projects
A great resource for new and experienced developers is the open source nature of decentralised finance. The vast majority of projects make their code openly available to learn from, fork and play with.
A good starting point are Open Zeppelin’s libraries of token interfaces and helper modules.
These provide a good example of what quality Solidity code looks like, what is possible and how to do particular things and how the individual token contracts work on a fundamental basis.
From there you can read through your favourite DeFi projects code base and even try deploying their contracts on your local testnets.
Here’s an example of forking the Safemoon contract: How To Clone Safemoon
Talented blockchain developers are in high demand globally. Due to Covid I’d estimate that 80%+ of roles are now remote.
Salaries vary across the industry and are unfortunately dependent on where we are in the market cycle. During the middle of a bull run a lot of new money is rushing in to the sector and unfortunately there is a shortage of experienced developers because they already got rich in the last cycle or they are working on their own projects that have more upside.
Note that no one in this industry has achieved mastery and a blockchain developer with 3-5 years experience would be considered senior for most roles as it just hasn’t been around for that long.
Average salaries for senior Solidity developers in 2022 are in the region of $200k/yr with junior positions ranging widely depending on experience and abilities. Web3 developers tend to earn less as it’s less specialist but someone with previous web3 experience will likely get offered a premium over a generalist front end developer.
Note that in a bear market investment and job opportunities disappear. It was a bad joke that you can time the markets by when Consensys is hiring or firing employees.
Some sites to find blockchain jobs:
If you want stability then look for successful well funded organisations that have been around for a while and have a long term plan to make money in the industry. If you want potential look at recently launched projects and try and secure a token allocation in addition to your salary as most projects will have a vested team allocation for tokens.
There is also a lot of contract work available and no end of projects that want to pay you only in tokens. I’d suggest against taking these opportunities unless you are exceptionally confident the token will gain liquidity and traction in the future.
Blockchain Developer Community
The blockchain developer community is a welcoming bunch of geeks, libertarians and business men. Community events are normally good fun, informative and great for getting a feel for where the industry is and where it might be heading.
Get involved in conferences, meetups, hackathons and local communities.
I hope that this blockchain developer roadmap has been of interest.
The Blockchain Sector newsletter goes out a few times a month when there is breaking news or interesting developments to discuss. All the content I produce is free, if you’d like to help please share this content on social media.
Disclaimer: Not a financial advisor, not financial advice. The content I create is to document my journey and for educational and entertainment purposes only. It is not under any circumstances investment advice. I am not an investment or trading professional and am learning myself while still making plenty of mistakes along the way. Any code published is experimental and not production ready to be used for financial transactions. Do your own research and do not play with funds you do not want to lose.