Necessary: Basic knowledge in JavaScript / HTML
Basic knowledge in C++ / Java, data types
Advantageous: Basic knowledge with git repositories
Key differences between blockchain and bitcoin
How to use Bitcoin
Technological architecture
Private keys
Cryptography as a security mechanism
Mathematical puzzle in blockchain
Implementation of proof of work