Applications openING Soon

Web3 Course

A flexible, online 10 week course created to help you make the leap from Web2 to Web3. Learn the basics of blockchain, Ethereum, Solidity, DeFi, and smart contracts with our project-based curriculum.

  • Ethereum
  • Smart Contract
  • Solidity Programming
  • Ethereum Virtual Machine
  • GraphQL
  • ERC20 and NFT Tokens
  • Blockchain Cryptography
  • Decentralized Finance (DeFi)
Get notified


Since the Bitcoin whitepaper was first published in 2008, 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
Alerting, scripting


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

Class Schedule

This course is designed to be flexible to fit into your daily life and will take approximately 10 weeks to complete. Some learners may choose to accelerate their pace, while others may need to extend their completion time. The weekly time commitment is approximately 15 hours including:

  • • 2 hours of learning via recorded videos and tutorials
  • • 2 hours reviewing study materials and completing quizzes
  • • 11 hours completing projects for each Sprint
  • • Optional: Weekly live office hours
    (Regular office hours will generally be available 2x a week between 5-9P PT)


Tuition is $5,500 USD.

This price includes access to the Web3 curriculum & on-demand videos for 1 year, you’ll also get access to our BloomTech Hub community, instructor help, and a certificate of completion.

We accept credit cards, ACH, and wire as forms of payment.

This course is open to International learners, but please be aware that most live sessions will take place between 4-9P ET.


It’s important to ask yourself, “Is this right for me?” Before you apply, make sure all of these statements are true for you.

  • I understand the course is only offered online and is hybrid, combining self-pacing and live, optional group interaction
  • I understand this course assumes I am already a  software developer with 1-2 years of experience in Javascript, Git, GitHub, and shell scripting
  • I have access to a computer or laptop with the minimum specifications: 1.6 GHz Processor, 4 GB RAM, 120 GB Hard Drive, Web Cam, & Microphone
  • I have access to reliable, high speed internet
  • I understand the course requires and can pay tuition
  • Optional: Ability to purchase 0.1 ETH for deploying to Ethereum mainnet (apprx. ~$360 USD). 

Web3 Admissions Process

This course is designed for experienced software engineers and therefore it is up to you to confirm you meet the requirements above prior to enrolling.

Step 1: Complete an application

First, tell us your name and email address (be sure it's an account you check regularly), and choose a password. You'll use these credentials to access your class materials, so please choose a strong password that you'll remember.

Then, we want to learn more about your engineering experience and how familiar you are with Web3 as it stands today.

Step 2: Agree to the BloomTech Privacy Policy

This tells us that you understand how we might use your information and how we protect your data. See our Privacy Policy

Step 3: Sign documents and choose start date

Now it's time to check your email, which will contain a series of tasks you'll need to complete before you can begin classes.

Choose Your Start Date
First, you need to choose your desired start date via the link in the email. This link will send you to a confirmation form, where you’ll let us know when you’d like to begin your BloomTech course, and you'll be asked to share some optional demographic information with us.

Sign the Enrollment Agreement
After you’ve reviewed the BloomTech Catalog and chosen your start date, you’ll be sent the Enrollment Agreement to review, initial, and sign.

Finalize Tuition Payment
We accept credit cards, ACH, and wire as forms of payment.

Have questions? We're here to help!
Email us at or schedule a call with an Enrollment Coach.

Frequently asked questions

What is the course format?
All content delivery will be via video accessed via our LMS. Twice a week there will be scheduled Zoom office hours for additional support as well as impromptu sessions. Our instructor will be available via Slack as well for quick answers.
Can I take the course at my own pace?
Yes! While we have cohorted start dates you may advance through the coursework as quickly or slowly as you like. As a reminder you’ll retain course access for 1 full year after enrolling.
What experience or knowledge do I need for this course?
  • 1 - 2 years of experience writing production software in Javascript or its syntactical supersets like TypeScript are critical for success in this program.
  • We will be utilizing bash scripting for various commands throughout this course and a working knowledge of any shell scripting language is required to be successful in this program.
  • Git and a working knowledge of version control systems, like GitHub, are required to be successful in this program.
This course is designed for people who have previous programming experience. We didn’t include a “years of experience” as a requirement but if you have been working with the above daily for at least 1-2 years you are qualified to take this course.
What equipment and supplies do I need for this course?
  • A laptop or desktop computer with the minimum specifications: 1.6 GHz Processor, 4 GB RAM, 120 GB Hard Drive, Web Cam, & Microphone
  • A reliable, high speed internet connection
  • OPTIONAL: Ability to purchase 0.1 ETH for deploying to Ethereum mainnet (apprx. ~$360 USD).