# Getting Started as a Smart Contract Developer

The blockchain industry has grown famous and has attracted a spontaneous amount of curious people ready to learn and skill up, considering the different levels of unemployment/underemployment all over the world. The blockchain industry has given opportunities to Traders, Event organizers, Marketers, tech experts, including Developers, Designers, DevOps engineers, Game developers, Q&A Testers, project managers, and Developer advocates. This week, I had my first talk for the year, and I had an opportunity to talk about how to get started as a smart contract developer and shared a couple of resources that I thought would be of help to someone who might read through this article.

Here is a list of prerequisites required to get started:-

* Basic understanding of web2: HTML/CSS/JAVASCRIPT among other programming languages
    
* Have an interest in blockchain technology: understand general basics of blockchain technology itself, and how it works(immutability, public ledger), blockchain use-cases like Bitcoin, Ethereum, and others from cryptocurrencies, Decentralized finance, NFTs, Metaverse, among others
    
* Have a general understanding of the characteristics of blockchain
    
    * immutable
        
    * traceability
        
    * privacy protection
        
    * independence
        
* learn the different blockchain networks: Ethereum, Binance Smart Chain, Polygon, Solana, Stacks, Celo, among others
    
* Get started with smart contract development: smart contract development language(Rust, Solidity, or Clarity)
    
* For beginners, it's advisable to pick Ethereum blockchain development as it has many use cases, a lot of learning resources, free & paid online, and there are a lot of EVM-compatible chains that you can work with or build on.
    

### Solidity and smart contract development

* Get the basics of Solidity programming language
    
* start writing smart contracts, compiling, and deploying using Solidity on IDEs like Remix
    
* write different smart contract use-cases like [ERC20](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol) contract, [ERC20](https://ethereum.org/en/developers/docs/standards/tokens/erc-20/) Fungible Token & [EIP-721: NFT standard](https://eips.ethereum.org/EIPS/eip-721)
    
* Use libraries and frameworks like Hardhat, Truffle, and write tests of the contracts you’re writing
    
    * [Node.js](https://nodejs.org/en/download/)/[NPM](https://www.npmjs.com/) - Runs JavaScript
        
    * [Hardhat](https://hardhat.org/) - A Useful Framework
        
    * [Hardhat - Typescript Support](https://hardhat.org/guides/typescript.html)
        
    * [MetaMask](https://metamask.io/) - Your Ethereum wallet
        
    * [Ganache](https://trufflesuite.com/ganache/index.html) - Your localhost blockchain
        
    * [Web3.js](https://web3js.readthedocs.io/en/v1.7.1/) - Connects sites to blockchain
        
    * [EtherScan](https://etherscan.io/) - check transactions
        
* Attend boot camps that teach smart contract development or get resources online. Also, constantly follow the different blockchain networks as they constantly hold hackathons and training for people interested in smart contract development.
    
* Writing a secure Smart contract
    
* Auditing Smart Contracts: [Certik](https://www.certik.com/products/security-audit)
    

### solidity cheatsheet

![soliditycheatsheet.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1647015949718/RaLbPhtIJ.jpg align="left")

by [HelloSongi.eth](https://twitter.com/Indigo20551366)

### Here is a list of blockchain programs/courses/schools that you can register to take in order to learn blockchain development

* [Web3Bridge](https://www.web3bridge.com/): it offers training for Web2(JavaScript, HTML, CSS), Web3(blockchain development: introduction to blockchain development, solidity, writing smart contracts), and advanced programs for Web3 graduates. The program is entirely free, offers onsite and online training, and has two cohorts per year. Web3Bridge also offers a lot of blockchain development training, especially across Africa. If you're interested in this program, the trick is to apply early and be fully dedicated, as they offer advanced training.
    
* [Blockgamesgg](https://blockgames.gg/) is an 8-week training program for developers to shape the future of Web3 by teaching how to solve problems by leveraging blockchain technology. It is organized by [NestCoin](http://Twitter.com/nestcoin) in collaboration with [HNG Internship](http://twitter.com/hnginternship) and [Zuri Academy](http://twitter.com/theZuriTeam).
    
* [ChainLink Academy](https://www.chainlink.education/) is an open-source learning program by Chainlink, the decentralized oracle network that provides reliable, tamper-proof inputs & outputs for complex smart contracts on any blockchain network. The program is absolutely free, and anyone is welcome to contribute to the learning resources by creating a pull request to the project's GitHub repository.
    
* [Consensys Academy](https://consensys.net/academy/bootcamp/): it's a blockchain developer online BootCamp that offers training in Ethereum blockchain development: introduction to blockchain, Solidity, smart contracts, among others. The program is one of the top sorts, it's paid and offers a certificate at the end. At times, there are scholarship opportunities to join the program. It has one cohort per year Check their [site](https://consensys.net/academy/bootcamp/) for more details
    
* [RSK Academy](https://academy.rsk.dev.br/) educates the new generation about bitcoin, blockchain, and open-source technologies. Offers courses: blockchain for developers, blockchain for business
    
* [Encode Club](https://www.encode.club/) is a place to get learning, build, get hired, and get funded. It offers educational workshops, Bootcamps, i.e, intensive training to become certified blockchain developers, hackathons, accelerator programs, investment opportunities, and AMAs with industry experts.
    
* [BlockDevsUnited - L\_EARN](https://github.com/BlockDevsUnited/l-earn/tree/master/Lessons/English/L_EARN) is a learning platform that offers developers learning blockchain development an incentive of 2.45 DAI if they pass the tests that come after every learning module, i.e, Learn & Earn. Check their GitHub repository, then join Discord and Telegram channels where you can show interest in taking the test after learning.
    
* [EatTheBlocks](https://pro.eattheblocks.com/) offers a number of paid and free courses to learn blockchain development, i.e, solidity smart contracts and Ethereum Decentralized applications. [EatTheBlock YouTube](https://www.youtube.com/c/EatTheBlocks/playlists) has resources for learning blockchain development
    
* [Smart Contract Programmer - YouTube](https://www.youtube.com/channel/UCJWh7F3AFyQ_x01VKzr9eyA): It has videos of writing different smart contracts and understanding/mastering Solidity.
    
* [BSC X ChainIDE Developer Bootcamp](https://bscbuilderbootcamp.com/): Binance Smart Chain, in collaboration with ChainIDE, is running their first Developer Bootcamp that focuses on NFTs, Blockchain games, and Metaverse. You can register for this and receive updates on future ones.
    
* [CS50: Introduction to Computer Science](https://pll.harvard.edu/course/cs50-introduction-computer-science?delta=0)
    
* [freeCodeCamp](https://www.freecodecamp.org/news/tag/solidity/)
    
* [Crypto Zombies](https://cryptozombies.io/)
    
* [OpenZeppelin](https://openzeppelin.com/)
    
* [Solidity Patterns](https://fravoll.github.io/solidity-patterns/)
    

### Non-Technical skills/Visibility

* [Github](GitHub.com) Profile
    
* Networking on Twitter: follow smart contract developers, engage them, and ask questions
    
* participate in hackathons & bounties on [Gitcoin](https://gitcoin.co/)
    
* Attend meetups and volunteer to speak at events
    

### apply for jobs frequently: smart contract engineer

* [Uniswap](https://jobs.lever.co/Uniswap)
    
* [AAVE](https://aave.com/careers/): contact them with your resume
    
* [cryptojoblist](https://cryptojobslist.com/)
    
* [Paradigm](https://www.paradigm.xyz/opportunities) opportunities
    
* [gitcoin bounties](http://gitcoin.io)
    
* Check the career pages of blockchain networks that you like
    

### solidity devs

* lower salary $1k & $3k as starting salary for junior devs
    
* intermediate devs: higher than $3k
    
* integration engineers: $11k
    

Roadmap

```python
- **General smart contract development**
- **Ecosystem**
- **Tools**
- **People**
- **Audit Reports**
- **Networking**
```

![ROADMAP.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1647015970080/J0-ONx32z.png align="left")

### Articles

* [Getting started with Web3: Resources & Communities](https://jebitok.hashnode.dev/getting-started-with-web3-communities-and-resources-ckwddu7hb025vz0s1ayzd7yi7)
    
* [ultimate smart contract development roadmap](https://blog.oliverjumpertz.dev/the-ultimate-smart-contract-developer-roadmap)
    

Thank you for reading through my article. There are many resources out there these are just a few of them.
