The best way to learn something new in the technical field is by playing with it. You can gain all the technical knowledge you want, but you will never learn the nitty-gritty things of technology unless you apply it. Furthermore, a good project can be added to your resume and showcased to potential employers. Today, let's see what you can build in the blockchain domain, which will give you a deeper insight into the technology and impress potential employers!
All the projects listed below can be undertaken by novice and amateur programmers. Previous knowledge of a programming language will be helpful but is not a compulsion.
Tech Stack- Ethereum, Solidity, MetaMask, Angular(optional)
Consider an auction where the bidders don't know each other or how much anyone is bidding; only the auctioneer is aware after the auction ends (for more info, lookup Chinese Auction).
This scenario is perfect for implementing on the Ethereum Blockchain as it provides anonymity by design! Use the Remix IDE to program a solid, smart contract that can list out all the auction conditions. This is a beginner-friendly project that I implemented myself during my early days. You will learn about the working of smart contracts on the Ethereum Blockchain, the working of MetaMask Wallets. You will grasp the basic concepts of Solidity, a programming language of smart contracts.
You can also take this project to the next level by implementing a functional frontend in Angular. Then you will have a presentable Full Stack application, which will boost your resume!
Find my Implementation here-
Tech Stack- Python, Flask
What better way to understand how blockchain works than to build one yourself! In the end, blockchain is just a program with various functions that give it all its unique properties. Therefore, you can write a blockchain in almost any programming language. People have programmed blockchain in C++, python as well as GoLang.
By programming your own blockchain, you will have a deep understanding of its consensus algorithms, cryptographic functions, and immutable nature, so I highly recommend doing this. There are many resources available out there, but I feel like the blog mentioned below explains it really well.
Link to the blog- Learn Blockchains by Building One
Tech Stack- Ethereum, Solidity, MetaMask, Any Web Technology of your choice
This is one of my favorites because it won my team the IBM Cummins Hackathon 2020! The concept is straightforward; When a natural disaster strikes, people from all over the world donate a lot of money and other essential commodities to the people in need. But often, due to various factors like mismanagement or corruption, the donations don't reach the needy.
Blockchain technology can be used to remedy this, and that is what we do in this project. Using the Ethereum blockchain and 2-3 well written smart contracts, we can track the money donated and all the applications for which it has been used. As this project solves a real-life problem, it looks elegant on your resume and will certainly impress an employer!
I cannot share the code for this project as it does not belong to me alone, but you can refer to this presentation to understand its working. Then you can implement it on your own!
These are just a few ideas to get you into the world of Blockchain Programming. I hope they serve you as a stepping stone so that you can build your own amazing projects!