My Journey Through Encode’s Advanced Solidity Bootcamp

Here’s a confession that might raise a few eyebrows:
Despite working in the blockchain industry since 2017, I wasn’t particularly adept at writing Solidity. It’s a bit like being a chef who’s great at planning menus but shaky with a knife.

This gap in my skillset was a key reason why I often worked for others rather than building my own projects.

But as the saying goes, the best time to plant a tree was 20 years ago, and the second best time is now. With that spirit, I recently took the plunge and completed Encode’s Advanced Solidity Bootcamp.

This post is all about that experience – the overview of the courses, the application process, the final project, and what’s next for me with the newly acquired knowledge.

Overview

The duration for this bootcamp is 6 six weeks, each with a different theme, as shown below.

  • Week 1: Solidity review, toolings, and EVM deepdive.
  • Week 2: Solidity Assembly and L2 overview.
  • Week 3: Gas optimization and security.
  • Week 4: MEV, Huff (deprecated when we were taught about it), and extra topics like upcoming ERCs, Uniswap v4’s hooks, etc.
  • Week 5: Sponsors’ week.
  • Week 6: Group project time.

There were four courses each week from Monday to Thursday, each starting at 5:00 PM and ending at 6:30 PM (UTC+1).

As a side note – I misread the timezone, so I didn’t realize each session was from 0:00 AM in my timezone until one day before the start of the bootcamp. To make matters worse, I was in Japan for a week during the bootcamp, and the starting time became 1:00 AM – but I’m glad I managed to finish the bootcamp.

The only fee I “paid” was a deposit of 250 USDC, which will be refunded if you have attended over 90% of the sessions (thanks to the sponsors!). You can even apply for a scholarship if you find the deposit too much.

Application Process

There are three stages to apply for the bootcamp:

  1. Form: You fill in your info like technical skills and links to GitHub/LinkedIn, and explain your motives,
  2. An Async Video Interview: You need to submit videos to answer some questions where a video asks each question. Most of the questions are blockchain-related – I know, shocking
  3. Deposit: You deposit 250 USDC to an address on Polygon and fill out a form.

I’m not sure how many people have applied for my batch but there are 45 people at most for each session.

Session Structure

Most sessions are done by the instructor going through the slides, and people can ask questions on Slido anytime. Either the instructor replied verbally, or the teaching assistant replied in the text on Slido. I know it sounds boring. But it’s what it is.

Some sessions include team discussion in a breakout room. Our team had five people, and Encode put people in adjacent time zones in the same group. For instance, in Week 3, we had a breakout room session where each team discussed reducing the gas cost for a smart contract.

Image
A screenshot of our team discussing how to reduce gas costs in the breakout room

If you’re thinking, “Is this course for me, though?” – well, if you need a certificate for completing a Solidity course and the time works for you. Go for it. But if you’re a fast reader and want to learn the content of the bootcamp, here is the link for the materials.

Final Project

Although the final project is group one, my group wasn’t responsive in Week 5 so I soloed one myself. The final result is here.

The repo contains the smart contracts, subgraph, and the UI for an Oracle-based DEX (and the faucet accompanies it). People can request test tokens from the UI and swap any two based on their Oracle prices, respectively. Also, to prevent frontrunning, users must trade in two steps – they submit an on-chain order first and then settle the order two minutes later.

Image
A screenshot of the UI. People can request test tokens by clicking the water droplet icon.

People can use this repo to host a trading competition on testnets where there are mock news and each one of them impacts the market price. There is no need for liquidity providers as the source, and the swapped tokens are minted out of thin air.

Here are the technology breakdown for this project:

I’ve put a lot of effort into writing the readme file. You should able to deploy the smart contracts, add a subgraph on Alchemy, and spin up a UI locally by following the instructions.

What’s Next

With this experience, I plan to start to work on some small projects myself. I doubt any of them will be revolutionary, but the point is to start building.

Feel free to follow me on X or LinkedIn to keep updated.

Leave a Comment

Your email address will not be published. Required fields are marked *