How to get into Web3 as a Developer

How to get into Web3 as a Developer

Introduction

If you’re interested in Web3 and blockchain, you might want to get into it by officially getting a job or a career in the space.
Even though it might look overwhelming, Web3 is just an extension of the current web, and most of the engineering stuff you already know will be helpful.
Having said that, there are concepts about which you must think outside the box to fully grasp.
Smart contracts need to be safe and secure, without bugs, because once deployed, they can’t be changed.
They are stored forever on the blockchain, and if there’s an error, malicious parties can take advantage of it.
There’s a concept of upgradable contracts, but it’s a tradeoff since users might have less trust for those.

Of course, to get into Web3, you don’t have to know how to program smart contracts.
All of the regular engineering and development roles are also needed.
Front-End, Back-End, design, databases, management, etc.
You can easily transition to the Web3 space, but I do recommend getting to know some theory first, as this will indicate your interest in the space and technology.

Why you might want to get in

Worldwide Decentralized Philosophy

One of the best things about Web3 for me is actually the philosophy behind it.
The goal is to create a trustless and decentralized system.
Having said that, let’s take a look at the current state of things.

One of the reasons people get into this space is this philosophy - therefore, a lot of founders are also ideal-driven and not just profit-driven.
That’s one of the reasons for most companies that operate in Web3 space to be decentralized and have distributed teams across the world, while still giving the same benefits to all of the employees.

As someone who’s not from the US or other countries that have strong startup ecosystems, this sounds like a good opportunity.

Of course, a lot of people like working from the office or having a “same-culture” team because it might be easier for communication and bonding, but for me, having a choice is a dealbreaker.

Equality of opportunity, benefits, and possibilities is a game changer for people working from less developed countries.

Tech Stack

Working in the Web3 world and exploring my own career options, I’ve come across a lot of job posts, as well as people that work in this field.
I’ll share some of my thoughts on the tech stack needed for Web3 jobs.

Front-End engineer

If you’re a Front-End engineer looking to get your feet wet with blockchain, I’m suggesting the React framework. Any Front-End framework would do the trick really, but React is the most common one from what I’ve seen.
To be called a Web3 Front-End engineer, you’d have to know at least some basics about how to interact with smart contracts from the Front-End, and for that, it’s good to go over ethers.js or web3.js libraries.
You can build a few projects that interact with smart contracts, fetch contract data, listen to contract events or implement a wallet connection. Try googling and searching for these keywords and you’ll find tutorials on how to do it. You’ll both learn how some of these things work, and you’ll have some portfolio Web3 projects under your belt.

Tech stack I recommend learning: React, Redux, Typescript, Sass, ethers.js or web3.js

Front-End developer roadmap: https://roadmap.sh/frontend
React developer roadmap: https://roadmap.sh/react

Back-End engineer

The same things go for Back-End engineers looking to get into Web3.
Most of the stuff will be the same, except for interacting with contracts.
I’d recommend the same libraries as above - ethers.js and web3.js.

Tech stack I recommend learning: Node.js(as both ethers.js and web3.js are written in JavaScript) or Go or Rust or Python, ethers.js, web3.js, and a database of your choice.

Back-End developer roadmap: https://roadmap.sh/backend
Node.js developer roadmap: https://roadmap.sh/nodejs
Go developer roadmap: https://roadmap.sh/golang
Python developer roadmap: https://roadmap.sh/python

Smart Contracts engineer

This is where it gets a little bit interesting. The smart contracts role didn’t exist before blockchain. Ethereum was the blockchain that introduced smart contracts, and thus the role and need of someone that develops them was born.

To become a smart contracts engineer, you need a deep understanding of how the blockchain works, how smart contracts are accessed and deployed, and everything around them.

There’s a good theory course on Blockchain from Berkley: https://www.edx.org/course/blockchain-technology
Another good course on smart contracts on Coursera: https://www.coursera.org/learn/smarter-contracts

And a practical code-along course where you build your own game with smart contracts: https://cryptozombies.io/

There are also multiple languages for writing smart contracts, such as Solidity, Vyper, Go, Rust and Typescript.

I’d recommend Solidity for starters, as it’s the most popular one with the largest community and the largest number of online resources and learning materials.

Tech stack I recommend learning: Solidity, Truffle or Hardhat, Ethereum chain, Remix IDE
Blockchain developer roadmap: https://roadmap.sh/blockchain

Protocol engineer

This is a hard role for me to describe as I’m not advanced enough yet, but generally, protocol engineers work on actually developing the blockchain protocols and the chains themselves.
You would need a good grasp of distributed systems, online protocols, codecs, compilers, EVM(Ethereum virtual machine), consensus algorithms, and cryptography.

Tech stack I recommend learning: Go or Rust or C++, Solidity, EVM, Zero-Knowledge solutions

Job Boards

Here’s a list of some online job boards where you can look for Web3-related jobs to get a career change:

Because of the decentralized philosophy, most teams in Web3 are distributed across the world, and therefore, most jobs are globally remote. This allows people from less-developed parts of the world to have the same opportunity when looking for a career in Web3 as people from startup-heavy communities like Silicon Valley.

Leading Companies in Web3

Some of the leading companies in the Web3 space(in no particular order):

And many more!

Conclusion

At first, it might seem overwhelming to get into Web3 because of all the new concepts, buzzwords, and terminology.
Then, when you realize it’s just an extension of Web2, it looks much easier and you’ll get motivated! But then, when you start learning more and more, it gets complicated once again when you see just how large the space is and how many different projects there are.
Don’t let that discourage you!
The more you learn, the more interesting it gets!

Just start absorbing knowledge, and you’ll find yourself immersed in bleeding-edge technologies and the tech that shapes the future and disrupts industries!