Since the Bitcoin whitepaper was first published in 2009, cryptocurrency systems have offered a new decentralized paradigm for digital money. Blockchains such as Ethereum have expanded on that paradigm by enabling smart contracts, software that runs on a blockchain and allows you to create and transfer digital goods. This new paradigm is called Web3, and whereas Web 2.0 software relies on large centralized companies, Web3 software runs on decentralized protocols that let users own and profit from their own data.
In the last 4 years the Web3 ecosystem has seen exponential growth and the introduction of new concepts in software, such as DeFi (decentralized finance) an alternative system for Internet finance, and NFT's (non-fungible tokens) for representing and trading digital art. This smart contract software requires a new set of software design principles that focus on security and composability. The demand for developers who understand the tools and mindset necessary for writing robust smart contracts is real and quickly growing. Yet we are only at the beginning of the shift to Web3. Fundamental improvements to the systems that underlie the Web3 ecosystem are now moving from research into implementation, and it is an exciting time to enter the space.
Our Web3 curriculum is developed in collaboration with industry leaders
Graduates of BloomTech’s Web3 Development program will leave with the skills and tooling experience necessary to build production decentralized apps (dApps). You will learn the best practices for writing and testing smart contracts in Solidity, an extremely popular smart contract programming language. You will learn how to protect your contacts from devastating vulnerabilities that have caused millions of dollars to be lost from attacks. The program will go into depth on the current trends in Web3 development, such as NFT's and DeFi. And you will learn how to build a frontend app using React that lets you interact with your smart contracts in an intuitive and efficient manner.
The course will cover deployment to both Polygon and Ethereum mainnet. All learners will be provided MATIC to deploy to Polygon but if you’d like to deploy to Ethereum you’ll need to purchase your own Ether. Deploying to mainnet is not a requirement for successful completion of the course.
Introduction to Ethereum and Smart Contracts
What is a blockchain and why is it useful? Node software, wallets, contracts, and transactions
Solidity Programming Language and Your First Smart Contract
Solidity syntax, Solidity development tools, basic testing
Testing Smart Contracts
Writing tests with Hardhat and Waffle, setup fixtures, mocking contracts, formal verification, debugging
Solidity and Smart Contract Design Patterns
Additional Solidity syntax, OpenZeppelin, ownership, upgradeability, pausing, mainnet forking
Reading and Interacting with your Smart Contract using The Graph and React
Indexing blockchain data with subgraphs, React dApps, connecting to metamask
Monitoring Your Protocol
Blockchain Cryptography and the Ethereum Virtual Machine (EVM)
Digital signatures, cryptographic hash functions, merkle trees, proof of work, proof of stake
Ethereum Tokens, ERC20 and ERC721 (NFT)
Token standards, approving and transferring, loss of coin and token callbacks
Decentralized Finance (DeFi)
stablecoins, DEX's, liquidity providers, staking, lending, price oracles
Hacking Smart Contracts: Devastating Vulnerabilities and Gas Optimization
reentrancy, front-running, oracle manipulation, gas optimizations