I recommend the lecture series “Distributed Systems” given by Martin Kleppmann for engineers interested in the distributed systems.
Do not expect anything revolutionary or something you can’t find in another place. This series describes standard models and algorithms used in modern systems. A lot of theory, no practice, do not expect code samples on Go or anything like that.
But I like the formal systematic approach and a clear definition of all the terms. Moreover, some models and algorithms explained crystally clear, very easy to understand even to a novice.
You will find out: * What “C” means in the “CAP theorem.” * Why “C” in CAP is not the same as “C” in ACID. * Why “CAP” therm is misleading and why “LAP” may be a better alternative.
Enjoy! And not forget to take a look at the exercises in the lecture notes.