Title: I&#x27;m looking for resources&#x2F;tips on how to learn concepts in system design. Things around backend engineering and all the various components that go into building large scale systems (load balancing, message queues, CDNs, etc.). I&#x27;d also like to learn concepts around data like database sharding, non-relational database models, streaming&#x2F;batch (lambda architecture, kappa architecture, etc.) and more.<p>In terms of what I&#x27;ve done so far...<p>I&#x27;ve read<p>- Designing Data Intensive Applications (<a href="https:&#x2F;&#x2F;dataintensive.net&#x2F;" rel="nofollow">https:&#x2F;&#x2F;dataintensive.net&#x2F;</a>) - This book has been recommended a ton on HN&#x2F;twitter&#x2F;reddit and I found it extremely useful to get a better idea of how data systems work, different types (OLAP vs. OLTP, data warehouse vs. lake, etc.) and get a better understanding of distributed systems.<p>- Quastor (<a href="https:&#x2F;&#x2F;www.quastor.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.quastor.org&#x2F;</a>) - This is a newsletter that sends out summaries of system design blog posts from Big Tech engineering blogs. It&#x27;s been helpful to me for getting an understanding of the different components involved in the tech stacks at various companies and how companies think about building scalable systems.<p>- MIT Distributed Systems (<a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLrw6a1wE39_tb2fErI4-WkMbsvGQk9_UB" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLrw6a1wE39_tb2fErI4-W...</a>) - This is a series of lectures by Robert Morris (co-founder of YC) on distributed systems and their properties. The lectures pick a specific tool&#x2F;technology (Google File System, ZooKeeper, Apache Spark, etc.) and then discusses it. I&#x27;ve really enjoyed reading the papers and watching the lectures.<p>I&#x27;d really love any recommendations from the HN community on how else I should be learning about system design.<p>Thank you very much!
Upvote: