Solidity Bootcamp (Advanced)
Cover your knowledge gaps in Ethereum development and solidity programming
Next Cohort Starts on
April 25th, 2023 at 7:30PM EST.
RareSkills has the longest and hardest training for solidity programming. Developers at top web3 companies have taken this Solidity bootcamp. If you are new to Solidity and smart contracts, please see our Dapp Bootcamp
22 Week Curriculum
Advanced Solidity: Up to date for 2023
1. Advanced Token Protocols
Understand the upgrades to the ERC20 protocol and build a token sale with bonding curves.
You will also learn every nook and cranny of the ERC20 protocol and its evolutions: ERC777 and ERC1363.
We will also implement token staking ecosystems using NFTs and fungible tokens.
2. Fuzzing and Mutation Testing
Learn how to evaluate the quality of your unit tests with mutation testing and automatically discover bugs with the Trail of Bits Echidna fuzzer.
3. Security and solidity anti-patterns
We select problems from Damn Vulnerable DeFi, Capture the Ether, and Ethernaut that you now have the prerequisite knowledge for (nothing is more frustrating that trying to do a hack on a subject you haven’t studied before).
But we also have a secret repository created just for RareSkills students that will test you on exercises you won’t find elsewhere online!
You will work through over 40 exercises that include more sophisticated vulnerabilities that include read-only re-entrancy, msg.sender spoofing, and subtle business logic errors.
4. EVM, Gas Optimization, Assembly
Learn from the bestselling author of the Udemy courses on gas optimization and assembly programming. It’s not just enough to master Solidity. You must master the environment that it runs in: the Ethereum Virtual Machine.
You will learn how the EVM actually conducts the transactions, stores information, and the protocols it uses to receive instructions.
Write (and read) smart contracts byte-by-byte, and write large contracts with zero solidity.
Learn (and practice) how hackers find vulnerabilities in unverified contracts and exploit them.
5. Design Patterns
We will understand the design choices behind EIP 1967, Transparent Upgradeable Proxies, UUPS, Diamonds, Clones, and Metaproxies.
More importantly, we will learn the many ways things go wrong with upgradeable contracts and hack vulnerable ones.
6. Elliptic Curve Cryptography
You will do elliptic curve math in python to understand from the ground up how digital signatures work.
You will learn useful design patterns related to signatures including EIP 712, ERC20 Permit, and Metatransactions.
Finally, you will practice vulnerabilities related to ECDSA including malleability, signature replay, zero recovery, and vulnerabilities that happen at the wallet level.
Most up-to-date and advanced curriculum
Private stackoverflow and private slack group
Weekly office hours (5 students max)
One-on-one expert code review
Job placement assistance if desired
Check what our alumni Students and Developers have to
say about RareSkills Blockchain Bootcamp. Read more
Job Offers at Major Companies
Turbocharge your Expertise
Our students have gotten job offers at companies including Layer Zero, Trail of Bits, Big Head Club (cryptokittes founded)
Amazing Peer Group
A Worthy Web3 Community
Our students include solidity instructors at other bootcamps and web3 technical founders who have raised millions in funding.
Top Notch Curriculum
Experience Unmatched Rigor
Curriculum and learning philosophy was designed by Jeffrey Scholz, the bestseller of advanced solidity courses on Udemy.
The RareSkills Way
We understand what
it takes to become an expert
Become The Expert
As your learning progresses,
you depend less and less on tutorials
We do not churn students or sacrifice
quality for volume
How to Onboard
Next cohort starts March 7, 2023, 8:30am EST. Fill out this form, and you will be
emailed an entrance exam If you pass, there will be a 30 minute video interview Pay tuition
(first month or full amount) to reserve your spot
Companies whose Engineers we have trained,
or have offered jobs to RareSkills students
Trail Of Bits
and uniswap v3
Big Head Club
What outcomes can I expect?
Our students have gotten jobs as auditors at top companies including Trail of Bits and Layer Zero, so we know our curriculum is truly unique. If you are joining RareSkills for a career upgrade, please read our advice about a career in blockchain.
Why there is so much more to Ethereum programming than solidity
The relationship between studying blockchain and salary, and advice for developers living in developing countries
But the outcome we see for every student who completes the program is this: Ethereum and smart contracts no longer seem like a black box. Being able to have a complete understanding of the execution environment leads to peace of mind when developing contracts, as you know you have eliminated the knowledge gaps that could seriously hurt you.
Who is this for?
This is for engineers who already know solidity and are looking to cover their knowledge gaps and develop a comprehensive understanding of the EVM and Solidity development.
What are the prerequisites?
You should already know how to create fungible and non-fungible tokens (ERC20 and ERC721). You should be able to connect a website to a smart contract with Metamask or Coinbase Wallet, or similar extension. You should be comfortable with Hardhat or Foundry (preferably both). You should have experience with unit testing. You don't have to know solidity thoroughly, but you should be comfortable creating basic contracts with it.
Which course comes next?
If you want to keep learning and be even more advanced, we recommend taking the DeFi Bootcamp. That will teach you how the major DeFi protocol architectures evolve and the math that underpins their tokenomics. Some of them use very sophisticated techniques with solidity that this course will prepare you to learn. If you are specifically interested in zero knowledge, then our zero knowledge course can be taken after this one instead of the DeFi one. However, what you learn in the DeFi course will be more widely applicable.
You can think about our Ethereum blockchain bootcamp as a four part series:
Dapp Bootcamp (8 weeks)
Advanced Solidity (22 weeks)
DeFi (8 weeks)
Zero Knowledge (8 weeks)
At 46 weeks, that's nearly a year of constantly challenging yourself to improve at a steep rate. You will definitely notice the results!
What is the time commitment each week?
Rough breakdown is as follows:
2 years of solidity experience: 10-15 hours per week
1 year of solidity experience: 15-20 hours per week
6 months of solidity experience 20-25 hours per week
Taken a few online courses or took the Dapp Bootcamp: 25+ hours per week
Why pay for a learning program when the internet is full of free information?
Because working with a top community, industry leading instructors, and a rigorous curriculum will help you learn faster and more thoroughly. Time is money. The faster you gain a skill, the sooner you see the effect in your career. You aren’t just paying for organizing information, but for access to a motivated and skilled community, and time with industry leaders.
What makes you different from other developer training programs?
1. Our classes are the smallest: 5 students
2. Our curriculum is the longest: over 40 weeks of Ethereum development training across our courses.
3. Our training philosophy is calibrated to be the optimal combination of self-study while leveraging the advantages of an education institution. Many trainers give students too much structured material and they spend more time watching videos and taking quizzes instead of applying their skills.
4. One-on-one mentorship and code reviews. Getting questions answered quickly is a time saver, so is pointing out mistakes you might miss on your own.
5. Unusually high success rate. With only one exception, every student who has completed the program, and wanted to switch careers, has gotten a job as a solidity developer or auditor. The success is largely due to our rigor, but also because we aggressively network on your behalf. This doesn’t mean we network for you, but it means you get more networking done for the same amount of work. The sole exception to our success was a student whose proficiency in English limited their career options. Beware of claims from other training programs that plaster logos of blockchain companies on their website without specifying that their graduates work traditional web2 jobs, or worse, haven’t hired anyone and just have an unofficial “hiring partnership.”
We take student outcomes very seriously.
Who are the instructors?
2x Bestseller for Advanced Solidity on Udemy
Former senior engineering manager at Yahoo for video machine learning
Master’s degree in computer science from Columbia University
Co-founder at Panoptic (raised 4.5 million from Uniswap and Coinbase Ventures)
Co-author of Automated Market Makers: A Practical Guide to Decentralized Exchanges and Cryptocurrency Trading
PhD in physics from Cornell University
Head of Engineering at Ava Labs (Avalanche)
Previously Head of Engineering at Headspace (machine learning).
Masters degree in data science and operations research from The University of British Columbia
Do you offer a job guarantee?
No we do not. We are not a bootcamp that tries to attract students by enticing them with potentially higher salaries. We are a training program for rising experts.
If you aren’t already making money as a software developer (or at least have in the past), you probably won’t be accepted to the program.
If you are an experienced developer looking to transition from web2 to web3, we certainly will help you by leveraging our network, preparing you for interviews, and suggesting changes to your CV. All our instructors have extensive experience as engineering hiring managers, and we are quite well connected in the industry. But generally, our target audience is junior blockchain developers looking to become senior and technical web3 entrepreneurs seeking to be the most capable engineering leaders they can be. These kinds of people don’t gain anything from a job guarantee.
Read more about why we don't have a job guarantee.
Do you earn a recruitment fee from connecting students to jobs?
If you make money off recruitment, why do you charge tuition?
First reason: 60% of students already have a solidity job, sometimes even as the lead solidity engineer on their team. They are coming to RareSkills not to switch jobs, but to be a better tech lead. We obviously can’t make recruitment fees off of engineers in that situation.
Second, this creates a mismatch of incentives. Switching jobs is not a decision to take lightly. If our business can’t stay afloat without pressuring you to switch employers, what do you think we are going to do? Charging tuition gives us the freedom to act in your best interest.
Third, we’ve observed a positive correlation with how much money students pay and how likely it is they will complete the program.
We believe employers constantly poaching engineers from each other slows down advancement in the ecosystem. RareSkills seeks a win-win solution where we increase the overall talent pool at a fairly low cost and with no negative externalities.
How many students drop out of the program?
About 20-30% of students find life gets in the way, or the program is too demanding.
What happens if a drop out early, do I get a prorated refund?
Yes, assuming you communicate your decision to us, we will respect it no question asked. If you ghost us and don’t communicate, we won’t offer a refund if you suddenly appear three months later.
Please note this applies to this students who pay upfront. Students who pay monthly are not eligible for refund, except during the first two weeks of the program. In that case, you only pay for as long as you are in the program.
Why do you earn a recruitment fee but not offer a job guarantee?
We believe that student outcomes are a reflection on the quality of our education. We can say our course is amazing, but realistically, we can make any claim we want. External judgement is important for staying objective.
Part of advancing in a career is not just having skills but also having a polished resume, being prepared for interviews, and having a good network. We actively help you with these things as we are
The reason we don’t offer a job guarantee is because ultimately, your future is in your hands, not ours. You are the captain of your ship, not RareSkills. If you can’t take responsibility for that, no-one can.
Is this a self-paced course?
No it isn’t. We expect you to not fall more than 4 weeks behind. If you do, you will be moved to a later cohort or asked to drop from the program. Part of what makes RareSkills so successful is that students feed off of each other’s energy. If somone isn’t taking the program seriously, it can negatively affect the experiences of other students.
How do I enroll?
Fill in the application here. You’ll automatically receive a coding test that will test you on basic things about numbers, lists, and strings. You have 4 hours to complete it, but most engineers finish it in 2.5 hours. After that, someone from our team will reach out to you and schedule a 30 minute call to determine if you are a good fit (and the program is a fit for you).
Why do you limit the class sizes to five?
In a large class, people get too intimidated to ask or answer questions in a group. However, answering and asking questions is an important catalyst for learning quickly. The size limit makes it easier for the instructor to develop a better relationship with the student and keep track of their progress and weaknesses.
These benefits don't happen in a large class.
I’ve already taken another Solidity bootcamp, will this help me?
We have solidity instructors and solidity professionals sign up for this course. You'll be in good company! If you score 60% or lower on our solidity test, then we are sure the course is a good fit for you.
I’m a technical web3 founder, will this help me?
About 10% of our students are entrepreneurs who own their own business or a founder stake in it.
How often is the curriculum updated, and what kind of updates do you do?
The curriculum goes through a minor update every month and a major update every four months. You’ll have lifetime access to whatever changes we make (for as long as RareSkills remains in business as an independent company). A minor update involves changing assignments to better reflect the skill we are trying to teach and a major update means topics were added or removed.
A topic may get removed or reduced if we believe it has become common knowledge in smart contract development. For example, we don’t teach ERC20 tokens in this course anymore because it is reasonable to assume everyone with Solidity experience knows it. Some of our security exercises drill understanding of ERC20 tokens better than explicitly teaching the protocol does anyway.
We cover more introductory topics in our Dapp Bootcamp.