billstark / blockchain-for-software-engineers

A curated list of resources for blockchain engineers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Blockchain for Software Engineers

Inspired by Google Interview University, Machine Learning for Software Engineers, The Authoritative Guide to Blockchain Development

"The blockchain symbolizes a shift in power from the centers to the edges of the networks." - William Mougayar

What is it?

A collection of resources that I've gathered over the past couple years while advancing in the blockchain world. I'm by no means a blockchain expert but I found the below resources proved useful on my journey from a full stack software engineer to a blockchain engineer. Hope this can help others.

This list is by no means exhaustive and is centered on the end goal of building production quality smart contracts and DApps. My journey has been focused on Ethereum but I would love this list to expand and not just be limited to one Blockchain. All contributions welcome!

About me

My background is in FinTech and I've worked in Investment Banking, Private Equity, and consumer facing investment companies. I'm currently exploring the intersection of deep learning and blockchain to engineer Web 3.0. If you are doing something similar, reach out :).

Linkedin: https://www.linkedin.com/in/benstewart2008/

Twitter: @bigbenstew

Medium: https://medium.com/@BIGbenStew

Goal

Create and curate a list of resources for aspiring and seasoned blockchain engineers.

Table of Contents

Covering the Material

Over the past two years, I found it useful to pick a subject from the list below, read it thoroughly, take notes, and implement on a blockchain running locally. I tend to prefer a top-down, hands on approach to learning. I found it extremely important to build and push my understanding further daily.

How to use it

Everything below is a prioritized outline and you should work from the top to the bottom.

  • Create a new branch so you can check items like this, just put an x in the brackets: [x]

Background

Blockchain technology is a multi-disciplinary field built atop cryptography, economics, and computer science. The background section includes some requisite fundamentals in these fields that will ensure you have solid footing before diving deeper into the blockchain specifics since many of the features that exist today are results of years and years of previous research.

Data Structures

Cryptography

Distributed Systems

Networking

Economics

Bitcoin

Intro to Bitcoin and Blockchain

Bitcoin and Blockchain Tutorials

Advanced Bitcoin

Books

Ethereum

Intro to Ethereum

Solidity and Smart Contracts

Beginner Tutorials

Smart Contract Security

Tools of the Trade

Ethereum Tutorials

Books

Blockchain Community

Blogs

Forums and Threads

Other Tools

Podcasts

Hackathons

Additional Curated Lists of Resources

Getting a job

Job Boards

About

A curated list of resources for blockchain engineers

License:Creative Commons Attribution Share Alike 4.0 International