The Hitchhiker's Guide to Blockchain Development
Tags: ethereum, javascript, tutorial
Published: 2021-10-23 13:39:39

### Introduction 😎

Spoiler alert 🚨 I should probably have called this "How to get started with Ethereum Blockchain development" considering I will be biased towards Ethereum in this article. Ethereum is probably the easiest path you can take when trying to learn about blockchain and becoming a blockchain developer. This is mainly due to the large community, a bunch of books, and tutorials. 

![Screenshot 2021-10-23 at 15.14.37.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1634994897444/J_HvkTi_C.png)


This article will be a guide to all those developers that have come to my DMs on Twitter asking "How do  I get started with blockchain" and anyone else who is interested in the space and would like to take the first step. I will keep it short and simple. Firstly ...

#### What's Blockchain? 🔗

it is a peer-to-peer ledger system that allows end-users to transact with each other without any centralized authority. For more on this check out my [previous article on the topic](https://cyprianaarons.hashnode.dev/blockchain-for-dummies-ckpihiqql02x5crs18kas0566)


![e-or-gamechanger.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1634994941308/OcTwPQCHw.png)

#### What's Blockchain Development? 🏎

In simple terms, blockchain development is about building applications based on blockchain architecture and protocol. It can also involve a focus on developing the core of the blockchain technology which involves designing the consensus protocols and core architecture etc.

#### Types of Blockchain Developers 🛩

1.  Core Blockchain Developer

These are developers responsible for architecture development, designing protocols for the blockchain solution. Designing security for the network and implementing various blockchain features.

2.  Blockchain Software Developer 

These are developers who develop and implement different use cases on top of blockchain technology developed by core blockchain developers.  This includes implementing smart contracts and developing full-stack dApps.


#### Roles in the space 

1. Blockchain Developer
2. Blockchain Solutions Architect
3. Blockchain Project Manager
4. Blockchain UI/UX Developer 

#### Why become a Blockchain Developer? 🤓🧐

Here is a quick list of the reasons 

1.  High paying jobs 
2. High Demand for Blockchain developers
3. Working in cutting edge technology
4. To beef up your resume  and portfolio

![pulse-survey-social-square-developed-blockchain.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1634994970964/ZPUpg3YQt.png)

#### Learning Roadmap 🛣

#### 1.  Become a Developer

You need to have some foundational knowledge in web development, at least one cool programming language i.e Javascript/C++/Go/Python, and key computer science-related topics like Networks, Data structures and Algorithms, and Databases to name a few. This will allow you to become a well-rounded Blockchain developer and makes the learning curve to becoming a Blockchain Dev less steep.

#### 1.1 Read up on Satoshi Nakamoto White paper on Bitcoin

White papers are documents that contain text about the purpose and technology behind a blockchain project. In 2008 Satoshi Nakamoto published a paper with the title Bitcoin: A Peer to peer Electronic Cash System, which helped start what is now the Blockchain revolution. Bitcoin is currently valued at 60,644 USD at the time of writing this article. That's insane!!

Here is a link to the document [Bitcoin Whitepaper]( https://bitcoin.org/bitcoin.pdf). Reading it will give you an appreciation of what Satoshi intended to do with Bitcoin and how bitcoin leverages blockchain technology.

#### 2. Learn Blockchain Basics

The goal here is to learn everything you can about Blockchain to get a good foundation of the technology before moving on to other things. Jumping this stage will result in you not having a full picture of the technology and will make learning technologies like Ethereum Blockchain difficult.

- Learn a bunch of key definitions i.e what is a  blockchain? 
- Cryptography 
- Distributed Systems i.e Distributed ledge technology
- Develop a simple blockchain from scratch 
- Understand the different use cases of Blockchain

#### 3. Learn how to develop Smart Contracts 

Smart contracts are a very significant component of blockchain technology. For Ethereum blockchain development you can make use of the Solidity programming language to write your smart contracts.

- Get an understanding  of smart contracts
- Code smart contracts with the Solidity Language
- Run and transact with smart contracts using tools like Remix IDE

#### 4. Learn how to use web3.js or Ethers.js

These tools will allow you to build frontend interfaces that can interact with your  Ethereum blockchain solution.

Heres links to the documentation: [Web3](https://web3js.readthedocs.io/en/v1.5.2/) and [Ethers](https://docs.ethers.io/v5/)

#### 5. Build Projects 

- NFT Game
- Distributed Exchange (DEX)
- NFT Marketplace
- Defi payments application 
- A crowdfunding platform

#### 6. Apply for part-time or full-time jobs

- [Aworker](https://aworker.io/)
- [Crytojobs](https://crypto.jobs/)
- [RemoteOk](https://remoteok.io/)
- [Freeflow](https://freeflow.team/devform)
- [Crytocurrency Jobs](https://cryptocurrencyjobs.co/remote/)

#### 7. Share your knowledge with Others

One of the best ways to learn and master a  skill is by teaching it to others. By blogging, teaching others, and posting threads on social media. Sharing your knowledge can also be a game-changer when it comes to getting opportunities. 

#### Useful Links and Resources 🖇

```
1. Blockchain

 https://cognitiveclass.ai/courses/blockchain-course
 https://github.com/yjjnls/awesome-blockchain
 https://cyprianaarons.hashnode.dev/blockchain-for-dummies-ckpihiqql02x5crs18kas0566

2. Solidity

 https://www.tutorialspoint.com/solidity/index.htm
 https://cryptozombies.io/
 https://github.com/bkrem/awesome-solidity

3. Web3.js

https://www.useweb3.xyz/
https://asiedu-dev.hashnode.dev/web30-a-down-to-earth-understanding-of-this-- new-raging-evolution

4. Ethereum

https://www.tutorialspoint.com/ethereum/index.htm
https://github.com/ttumiel/Awesome-Ethereum
https://ethereum.org/en/developers/
https://ethereum.org/en/whitepaper/

5. Dapps

https://www.dappuniversity.com/
https://medium.com/heptagon/step-by-step-guide-to-build-a-dapp-a-homo-sapiens-2-day-love-affair-with-ethereum-dapp-de2b0dea12f1

6. Nft

 https://nftschool.dev/
 https://github.com/gianni-dalerta/awesome-nft
```

#### Books on Blockchain 📚

1. Blockchain Technology Explained 2021: The Ultimate Beginner's Guide About Blockchain by Warren Larsen

2. Beginning Ethereum and Solidity with React by Greg Lim 

3. The Infinite Machine: How an Army of Crypto-hackers Is Building the Next Internet k by Camila Russo

4. Learn Ethereum: Build your own decentralized applications with Ethereum Book by Dongying Song, Xun Wu, and Zhihong Zou

5. Mastering Ethereum: Building Smart Contracts and DApps by Andreas A


#### Conclusion   🚀🚀🚀

I hope my article helps you get started with Blockchain development. And if so please react to it, share it, and let us make it go viral lol😂

> Thank you for reading this -Follow me on [Twitter](https://twitter.com/CyprianAarons)

> Checkout my [website](cyprianaarons.co.zw).

>Cover Photo by David Kopacz from Pexels

<a href="https://www.buymeacoffee.com/cyprianaarons" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" ></a>