# ๐Ÿ“š Knowledge > an attempt to centralize my studies/links/annotations for reference purposes At the moment this is not useful for anyone but myself, if at some point I find it usefult I'll make it public. (click to see the large version) ## How to use this repo? The README topics/links are organized following above chart. High-level subjects are usually parent topics, sub-topics are usually specialization of the main subject. Depending on your level, you can dive deeper into a subject's sub-topics, or just move to the next one. * Left to write: indicate how generic subjects are * Top-bottom: Order of importance/relevancy and specialization of each subject or sub-category e.g.: Software Engineering * Databases * SQL * Postgres Basics * Postgres Internal * How postgres replication works * Parsing postgres WAL(WriteAheadLog) * Versioning For instance, take into account the snaptshot above. If you already know how to use SQL Databases, you might want to either: * Continue to the right, learning more more about Postgres, and to the bottom, its internals, specialized internals like replication and WAL. * Continue to the bottom/next topic: `Programming Languages`. ### Tags > Categories to the links * ๐ŸŒ - Interesting Link * ๐Ÿ“ฐ - Article / Paper * ๐Ÿ“• - Book * ๐Ÿ’ป - Project * ๐ŸŽ“ - Online Course * ๐Ÿ“ผ - Video Presentation / Content * ๐ŸŽฅ - Slides Presentation * โœ๐Ÿผ - Written/Made by me * ๐Ÿ“ - My annotations * ๐Ÿ†“ - Free / No money required * ๐Ÿ’ฐ - Paid * ๐Ÿ’ช๐Ÿผ - Practice * ๐Ÿฆ - Person to Follow on Twitter * โญ๏ธ - Favourite Option (when there are many alternatives) * ๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ง- Workshop ## References * Site Reliability Engineering * Culture * Introductory * [So you want to be an SRE? - Krishelle Hardson-Hurley](https://hackernoon.com/so-you-want-to-be-an-sre-34e832357a8c) ๐Ÿ“ฐ ๐Ÿ†“ * Deeper Introduction * [Site Reliability Engineering - How Google Runs Production Systems](https://landing.google.com/sre/books/) ๐Ÿ“• ๐Ÿ†“ * [The Site Reliability Workbook - Practical Ways to Implement SRE](https://landing.google.com/sre/books/) ๐Ÿ“• ๐Ÿ†“ * [SRE - Keeping Google up and running 24/7](https://www.youtube.com/watch?v=yXI7r0_J29M) ๐Ÿ“ผ ๐Ÿ†“ * [Keys to SRE - Google](https://www.youtube.com/watch?v=n4Wf14e2jxQ) ๐Ÿ“ผ ๐Ÿ†“ * [Who/What? is SRE - Google (Panel)](https://www.youtube.com/watch?v=P83XESU3oZ8) ๐Ÿ“ผ ๐Ÿ†“ * Google Series on SRE - class SRE implements DevOps * [What's the Difference Between DevOps and SRE?](https://www.youtube.com/watch?v=uTEL8Ff1Zvk) ๐Ÿ“ผ ๐Ÿ†“ * [SLIs, SLOs, SLAs, oh my!](https://www.youtube.com/watch?v=tEylFyxbDLE) ๐Ÿ“ผ ๐Ÿ†“ * [Risk and Error Budgets](https://www.youtube.com/watch?v=y2ILKr8kCJU) ๐Ÿ“ผ ๐Ÿ†“ * [Toil and Toil Budgets](https://www.youtube.com/watch?v=IvQ-15-yE_c) ๐Ÿ“ผ ๐Ÿ†“ * [Now SRE Everyone Else with CRE!](https://www.youtube.com/watch?v=GQPzaq-owYM) ๐Ÿ“ผ ๐Ÿ†“ * [Managing Risks as a Site Reliability Engineer](https://www.youtube.com/watch?v=4kGu1_M7Igg) ๐Ÿ“ผ ๐Ÿ†“ * [Actionable Alerting for Site Reliability Engineers](https://www.youtube.com/watch?v=CGldVD5wR-g) ๐Ÿ“ผ ๐Ÿ†“ * [Observability of Distributed Systems](https://www.youtube.com/watch?v=SoZZzB-yTOk) ๐Ÿ“ผ ๐Ÿ†“ * [Incident Management](https://www.youtube.com/watch?v=n4y9dwinPBQ) ๐Ÿ“ผ ๐Ÿ†“ * [Postmortems and Retrospectives](https://www.youtube.com/watch?v=UBe7U2b3tsA) ๐Ÿ“ผ ๐Ÿ†“ * [IBM Garage - Building SRE from Scratch](https://medium.com/ibm-garage/building-sre-from-scratch-485e23985bbd) * Use cases * [Site Reliability Engineering - Google - Christof Leng](https://www.youtube.com/watch?v=d2wn_E1jxn4&) ๐Ÿ“ผ ๐Ÿ†“ * [Implementing SLOs for a New Service - Squarespace](https://www.youtube.com/watch?v=ffbGyHPWwZM) ๐Ÿ“ผ ๐Ÿ†“ * [Shipping Software with an SRE Mindset - Circonous](https://www.youtube.com/watch?v=TZWWkvxFXls) ๐Ÿ“ผ ๐Ÿ†“ * [Latency SLOs Done Right - Circonous](https://www.youtube.com/watch?v=iPotMqzOsDI) ๐Ÿ“ผ ๐Ÿ†“ * [Site Reliability Engineering at Dropbox - Tammy Buttow](https://www.youtube.com/watch?v=ggizCjUCCqE) ๐Ÿ“ผ ๐Ÿ†“ * [190 Countries and 5 core SREs - Netflix - Jonah Horowitz](https://www.youtube.com/watch?v=koGaH4ffXaU) ๐Ÿ“ผ ๐Ÿ†“ * People to Follow * [Liz Fong-Jones](https://twitter.com/lizthegrey) ๐Ÿฆ * [Seth Vargo](https://twitter.com/sethvargo) ๐Ÿฆ * [Tammy Buttow](https://twitter.com/tammybutow) * Monitoring (See later Section) * Being on Call * Post-mortem * Software Engineering * Version Control * git * [Version Control with Git](https://learning.oreilly.com/library/view/version-control-with/9781449345037/) ๐Ÿ“• ๐Ÿ’ฐ * Programming Languages * Paradigms * [Coursera - Programming Languages - Part A](https://www.coursera.org/learn/programming-languages) ๐Ÿ“ผ ๐ŸŽ“ ๐Ÿ†“ * [Coursera - Programming Languages - Part B](https://www.coursera.org/learn/programming-languages-part-b) ๐Ÿ“ผ ๐ŸŽ“ ๐Ÿ†“ * [Coursera - Programming Languages - Part C](https://www.coursera.org/learn/programming-languages-part-c) ๐Ÿ“ผ ๐ŸŽ“ ๐Ÿ†“ * **Functional Programming Languages** * Haskell * General Overview * [Haskell From First Principles](http://haskellbook.com) ๐Ÿ“• ๐Ÿ’ฐ * [Book Exercises](https://github.com/marceloboeira/hffp) ๐Ÿ“ ๐Ÿ’ช๐Ÿผ ๐Ÿ†“ * [Simon Peyton Jones - Escape from the ivory tower - the Haskell journey](https://www.youtube.com/watch?v=re96UgMk6GQ) ๐Ÿ“ผ ๐Ÿ†“ * [Simon Peyton Jones - A History of Haskell - being lazy with class](https://www.youtube.com/watch?v=06x8Wf2r2Mc) ๐Ÿ“ผ ๐Ÿ†“ * [Andrew Rademacher - Demystifying Haskell](https://www.youtube.com/watch?v=apBWkBDVlow) ๐Ÿ“ผ ๐Ÿ†“ * Use cases * Facebook * [Bryan O'Sullivan - The Bright Side of High Level Languages](https://www.youtube.com/watch?v=kGa78HQv_LQ) ๐Ÿ“ผ ๐Ÿ†“ * [Jon Coens - The Road to Running Haskell at Facebook Scale](https://www.youtube.com/watch?v=sl2zo7tzrO8) ๐Ÿ“ผ ๐Ÿ†“ * Practice * [The Monad Challenges](http://mightybyte.github.io/monad-challenges/) ๐Ÿ’ช๐Ÿผ ๐Ÿ†“ * Concepts * Functional Programming * [Computerphile - Functional Programming & Haskell](https://www.youtube.com/watch?v=LnX3B9oaKzw) ๐Ÿ“ผ ๐Ÿ†“ * Lambda Calculus * [Computerphile - Lambda Calculus](https://www.youtube.com/watch?v=eis11j_iGMs) ๐Ÿ“ผ ๐Ÿ†“ * [Lambda Calculus - Fundamentals of Lambda Calculus & Functional Programming](https://www.youtube.com/watch?v=3VQ382QG-y4) ๐Ÿ“ผ ๐Ÿ†“ * [Lambda Calculis - Church Encodings && Combinators](https://www.youtube.com/watch?v=pAnLQ9jwN-E) ๐Ÿ“ผ ๐Ÿ†“ * The Y Combinator * [Computerphile - Y Combinator](https://www.youtube.com/watch?v=9T8A89jgeTI) ๐Ÿ“ผ ๐Ÿ†“ * Monads * [Computerphile - What is a Monad?](https://www.youtube.com/watch?v=t1e8gqXLbsU) ๐Ÿ“ผ ๐Ÿ†“ * [Functional Programming Patterns for Mere Mortals - Daniel Chambers](https://www.youtube.com/watch?v=v9QGWbGppis) ๐Ÿ“ผ ๐Ÿ†“ * **Systems Programming Languages** * Rust * [The Rust Programming Language](https://doc.rust-lang.org/stable/book/) ๐Ÿ“• ๐Ÿ†“ * [Annotations](https://github.com/marceloboeira/trpl) ๐Ÿ“ * SubProjects * [grab](https://github.com/marceloboeira/grab) ๐Ÿ‘‹๐Ÿผ like grep, but simpler [Chapters' 12/13 project]. * [dull](https://github.com/marceloboeira/dull) ๐Ÿคช a dummy multi-thread HTTP server [Chapter's 20 project]. * General Overview * [Aaron Turon - Rust: confident, productive systems programming](https://www.youtube.com/watch?v=C6dNx9pY7p8) ๐Ÿ“ผ ๐Ÿ†“ * [Steve Klabnik - The History of Rust](https://www.youtube.com/watch?v=79PSagCD_AY) ๐Ÿ“ผ ๐Ÿ†“ * Use cases * [Raph Levien - A Modern Editor Built in Rust](https://www.youtube.com/watch?v=SKtQgFBRUvQ) ๐Ÿ“ผ ๐Ÿ†“ * Testing Frameworks * [Speculate](https://github.com/utkarshkukreti/speculate.rs) Adds RSpec like behavior to rust via macros * [Programming Rust](https://learning.oreilly.com/library/view/programming-rust/9781491927274/) ๐Ÿ“• ๐Ÿ’ฐ * Go * Concurrency * [Concurrency in Go](https://learning.oreilly.com/library/view/concurrency-in-go/9781491941294/) ๐Ÿ“• ๐Ÿ’ฐ * Garbage Collector * [Golang's Realtime GC in Theory and Practice](https://www.youtube.com/watch?v=bMujSVMarqY) ๐Ÿ“ผ ๐Ÿ†“ * [Garbage Colletor Handbook](https://learning.oreilly.com/library/view/the-garbage-collection/9781315388007/) ๐Ÿ“• ๐Ÿ’ฐ * Programming Topics * Algorithms and Data Structures * [Udacity - Intro to Data Structures and Algorithms by Google](https://eu.udacity.com/course/data-structures-and-algorithms-in-python--ud513) ๐Ÿ†“ ๐ŸŽ“ ๐Ÿ“ผ * [Coursera - Algorithms - Part 1 - Elementary data structures, sorting, and searching algorithms](https://www.coursera.org/learn/algorithms-part1) ๐Ÿ†“ ๐ŸŽ“ ๐Ÿ“ผ * [Coursera - Algorithms - Part 2 - Graph and string-processing algorithms](https://www.coursera.org/learn/algorithms-part2) ๐Ÿ†“ ๐ŸŽ“ ๐Ÿ“ผ * [Courated List of the 10 best free resources](https://medium.freecodecamp.org/these-are-the-best-free-courses-to-learn-data-structures-and-algorithms-in-depth-4d52f0d6b35a) ๐Ÿ“ฐ ๐Ÿ†“ * Alternative Data Structures * [โ€œEsoteric Data Structures and Where to Find Themโ€ - Allan Deutsch](https://www.youtube.com/watch?v=-8UZhDjgeZU) ๐Ÿ“ผ ๐Ÿ†“ * 0:36 Slot map * 10:08 Bloom filters (non-counting) * 16:46 Navigation meshes * 20:36 Hash pointer / Block chain / Merkle tree * Probabilistic Data Structures * Bloom Filter * [An Introduction to Bloom Filter (Probably Yes, Always No)](https://www.youtube.com/watch?v=x2sLjRK56YU) ๐Ÿ“ผ ๐Ÿ†“ * [Bloom Filters](https://www.youtube.com/watch?v=heEDL9usFgs) ๐Ÿ“ผ ๐Ÿ†“ * [Bloom filter for System Design applications](https://www.youtube.com/watch?v=Bay3X9PAX5k) ๐Ÿ“ผ ๐Ÿ†“ * [Bloom Filters](https://www.youtube.com/watch?v=bEmBh1HtYrw) ๐Ÿ“ผ ๐Ÿ†“ * Count-Min-Sketch * [Big Data with Sketchy Structures, Part 1 โ€” the Count-Min Sketch](https://towardsdatascience.com/big-data-with-sketchy-structures-part-1-the-count-min-sketch-b73fb3a33e2a) ๐Ÿ“ฐ ๐Ÿ†“ * [Count min sketch | Efficient algorithm for counting stream of data | system design components](https://www.youtube.com/watch?v=ibxXO-b14j4) ๐Ÿ“ผ ๐Ÿ†“ * Databases * Theory * [Designing Data-Intensive Applications - Martin Kleppmann](http://dataintensive.net) ๐Ÿ“• ๐Ÿ’ฐ * [CAP Theorem Revisited](http://robertgreiner.com/2014/08/cap-theorem-revisited/) ๐Ÿ“ฐ ๐Ÿ†“ * [The Pathologies of Big Data](https://queue.acm.org/detail.cfm?id=1563874) ๐Ÿ“ฐ ๐Ÿ†“ * Scaling * Replication * -- * Sharding * [Understanding Database Sharding - DigitalOcean](https://www.digitalocean.com/community/tutorials/understanding-database-sharding) ๐Ÿ“ฐ ๐Ÿ†“ โญ๏ธ * [Sharding in Plain English - Citrus Data Blog](https://www.citusdata.com/blog/2018/01/10/sharding-in-plain-english/) ๐Ÿ“ฐ ๐Ÿ†“ * [Introduction to Sharding - B's March (MongoDB Focused)](https://www.youtube.com/watch?v=4upppuW7lGE) ๐Ÿ“ผ ๐Ÿ†“ * [Sharding & Database Partitioning | System Design Basics](https://www.youtube.com/watch?v=RynPj8C0BXA) ๐Ÿ“ผ ๐Ÿ†“ * [System Design - Sharding | Data Partitioning](https://www.youtube.com/watch?v=yNrVexoEnFM) ๐Ÿ“ผ ๐Ÿ†“ * SQL * Row-based * PostgreSQL * [Postgres: Up & Running](https://learning.oreilly.com/library/view/postgresql-up-and/9781491963401/) ๐Ÿ“• ๐Ÿ’ฐ โญ๏ธ * [Learning PostgreSQL 11](https://learning.oreilly.com/library/view/learning-postgresql-11/9781789535464/) ๐Ÿ“• ๐Ÿ’ฐ * [Mastering PostgreSQL 11 - Second Edition](https://learning.oreilly.com/library/view/mastering-postgresql-11/9781789537819/) ๐Ÿ“• ๐Ÿ’ฐ * [Understanding Advanced Datatypes in PostgreSQL](https://www.youtube.com/watch?v=h0eEJ7uX13Q) ๐Ÿ“ผ ๐Ÿ†“ * [Updating a 50 terabyte PostgreSQL database](https://medium.com/adyen/updating-a-50-terabyte-postgresql-database-f64384b799e7) ๐Ÿ“ฐ ๐Ÿ†“ * [How Twitch uses PostgreSQL](https://blog.twitch.tv/how-twitch-uses-postgresql-c34aa9e56f58) ๐Ÿ“ฐ ๐Ÿ†“ * [Handling Growth with Postgres: 5 Tips From Instagram](https://instagram-engineering.com/handling-growth-with-postgres-5-tips-from-instagram-d5d7e7ffdfcb) ๐Ÿ“ฐ ๐Ÿ†“ * [Updating a 50 terabyte PostgreSQL database](https://medium.com/adyen/updating-a-50-terabyte-postgresql-database-f64384b799e7) ๐Ÿ“ฐ ๐Ÿ†“ * [Sharding & IDs at Instagram](https://instagram-engineering.com/sharding-ids-at-instagram-1cf5a71e5a5c) ๐Ÿ“ฐ ๐Ÿ†“ * [Sharding and Scaling PostgreSQL: Principles and Practice Webinar](https://www.youtube.com/watch?v=mbXPbLjiYTI) ๐Ÿ“ผ ๐Ÿ†“ * [Citus vs. Single-Node Postgres Database | A Side-by-Side Comparison](https://www.youtube.com/watch?v=g3H4nGsJsl0) ๐Ÿ“ผ ๐Ÿ†“ * Replication * [Three Approaches to PostgreSQL Replication and Backup](https://www.citusdata.com/blog/2018/02/21/three-approaches-to-postgresql-replication/) ๐Ÿ“ฐ ๐Ÿ†“ * [PostgreSQL Streaming Replication](https://www.youtube.com/watch?v=NaPnYQBBdyU) ๐Ÿ“ผ ๐Ÿ†“ * [PostgreSQL Replication Concepts](https://www.youtube.com/watch?v=fsMvr96gTjY) ๐Ÿ“ผ ๐Ÿ†“ * [PostgreSQL Replication by example - Kobus Wolvaardt](https://www.youtube.com/watch?v=5BeC1aD4z8E) ๐Ÿ“ผ ๐Ÿ†“ โญ๏ธ * MySQL * [Learn to stop using shiny new things and love MySQL](https://medium.com/@Pinterest_Engineering/learn-to-stop-using-shiny-new-things-and-love-mysql-3e1613c2ce14) ๐Ÿ“ฐ ๐Ÿ†“ * [Tracking the Moneyโ€Šโ€”โ€ŠScaling Financial Reporting at Airbnb](https://medium.com/airbnb-engineering/tracking-the-money-scaling-financial-reporting-at-airbnb-6d742b80f040) ๐Ÿ“ฐ ๐Ÿ†“ * [Scaling to 100M: MySQL is a Better NoSQL](https://www.wix.engineering/blog/scaling-to-100m-mysql-is-a-better-nosql) ๐Ÿ“ฐ ๐Ÿ†“ * [Unlocking Horizontal Scalability in Our Web Serving Tier](https://medium.com/airbnb-engineering/unlocking-horizontal-scalability-in-our-web-serving-tier-d907449cdbcf) ๐Ÿ“ฐ ๐Ÿ†“ * [Why Uber Engineering Switched from Postgres to MySQL](https://eng.uber.com/mysql-migration/) ๐Ÿ“ฐ ๐Ÿ†“ * [Evaluating MySQL Parallel Replication Part 4, Annex: Under the Hood](https://medium.com/booking-com-infrastructure/evaluating-mysql-parallel-replication-part-4-annex-under-the-hood-eb456cf8b2fb) ๐Ÿ“ฐ ๐Ÿ†“ * [Mitigating replication lag and reducing read load with freno](https://github.blog/2017-10-13-mitigating-replication-lag-and-reducing-read-load-with-freno/) ๐Ÿ“ฐ ๐Ÿ†“ * [Black-Box Auditing: Verifying End-to-End Replication Integrity between MySQL and Redshift](https://engineeringblog.yelp.com/2018/04/black-box-auditing.html) ๐Ÿ“ฐ ๐Ÿ†“ * [How We Partitioned Airbnb's Main Database in Two Weeks](https://medium.com/airbnb-engineering/how-we-partitioned-airbnb-s-main-database-in-two-weeks-55f7e006ff21) ๐Ÿ“ฐ ๐Ÿ†“ * [Sharding Pinterest: How we scaled our MySQL fleet](https://medium.com/@Pinterest_Engineering/sharding-pinterest-how-we-scaled-our-mysql-fleet-3f341e96ca6f) ๐Ÿ“ฐ ๐Ÿ†“ * [How We Replaced Our Data Pipeline With Zero Downtime](https://www.twilio.com/engineering/2014/06/26/how-we-replaced-our-data-pipeline-with-zero-downtime) ๐Ÿ“ฐ ๐Ÿ†“ * [Vitess: MySQL Sharding - Square Engineering](https://www.youtube.com/watch?v=q65TleTn2vg) ๐Ÿ“ผ ๐Ÿ†“ * RDS * Aurora * [Amazon Aurora Multi-Master: Scaling out database write performance (MySQL)](https://www.youtube.com/watch?v=p0C0jakzYuc) ๐Ÿ“ผ ๐Ÿ†“ * [Aurora Encryption Performance Numbers](https://aws.amazon.com/blogs/database/selecting-the-right-encryption-options-for-amazon-rds-and-amazon-aurora-database-engines/) ๐Ÿ“ฐ ๐Ÿ†“ * [Aurora Global Database](https://www.youtube.com/watch?v=1vFg1z-2E7Y) ๐Ÿ“ผ ๐Ÿ†“ * Performance Tunning * [Part 1 - Memory and Query Plan Management](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-1-memory-and-query-plan-management/) ๐Ÿ“ฐ ๐Ÿ†“ * [Part 2 - Replications Security and Logging](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-2-replication-security-and-logging/) ๐Ÿ“ฐ ๐Ÿ†“ * [Part 3 - Optimizer Params](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-3-optimizer-parameters/) ๐Ÿ“ฐ ๐Ÿ†“ * [Part 4 - ANSI Compatibility Options](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-4-ansi-compatibility-options/) ๐Ÿ“ฐ ๐Ÿ†“ * [Security](https://aws.amazon.com/rds/features/security/) * [Encryptin an exsting RDS PgSQL](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/encrypt-an-existing-amazon-rds-for-postgresql-db-instance.html) ๐Ÿ“ฐ ๐Ÿ†“ * RDS Proxy * [Using Relational Databases with AWS Lambda - Easy Connection Pooling](https://www.youtube.com/watch?v=dgj9cvqgYYs) ๐Ÿ“ผ ๐Ÿ†“ * Aurora Serverless * [How to Build Highly Scalable Serverless Applications with Amazon Aurora Serverless](https://www.youtube.com/watch?v=I0uHo4xAIxg) ๐Ÿ“ผ ๐Ÿ†“ * Data API * [Getting Started with Aurora Serverless Data API](https://www.youtube.com/watch?v=b_BzV1G1iRs) ๐Ÿ“ผ ๐Ÿ†“ * Cross-region Replication * [Best practices for Amazon RDS for PostgreSQL cross-Region read replicas](https://aws.amazon.com/blogs/database/best-practices-for-amazon-rds-for-postgresql-cross-region-read-replicas/) ๐Ÿ“ฐ ๐Ÿ†“ * Column-based * Redshift * Materialized Views * [Docs](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-overview.html) ๐Ÿ“ฐ ๐Ÿ†“ * [Overview](https://www.youtube.com/watch?v=mQAs44MHmeY) ๐Ÿ“ผ ๐Ÿ†“ * [Deep-Dive](https://www.youtube.com/watch?v=PjBMZW4Ze0c) ๐Ÿ“ผ ๐Ÿ†“ * NoSQL * KeyValue * [BoJack](https://github.com/marceloboeira/bojack) โœ๐Ÿผ ๐Ÿ’ป ๐Ÿ†“ * [Why you should build your own NoSQL database](https://medium.com/@marceloboeira/why-you-should-build-your-own-nosql-database-9bbba42039f5) โœ๐Ÿผ ๐Ÿ“ฐ ๐Ÿ†“ * Redis * [Redis Cookbook](https://learning.oreilly.com/library/view/redis-4x-cookbook/9781783988167/) ๐Ÿ“• ๐Ÿ’ฐ * Cassandra * [Cassandra: Introduction by DATASAX](https://www.youtube.com/watch?v=B_HTdrTgGNs) ๐Ÿ“ผ ๐Ÿ†“ * [Cassandra at Instagram 2016](https://www.slideshare.net/DataStax/cassandra-at-instagram-2016) ๐Ÿ“ฐ ๐Ÿ†“ * [Cassandra: The Definitive Guide](https://learning.oreilly.com/library/view/cassandra-the-definitive/9781491933657/) ๐Ÿ“• ๐Ÿ’ฐ * Amazon Keyspaces * [Running Apache Cassandra Workloads by Using Amazon Keyspaces](https://www.youtube.com/watch?v=zehVQzlSuEU) ๐Ÿ†“ ๐Ÿ“ผ * DocumentStore * ElasticSearch * Internals * [ElasticSearch from the Bottom Up](https://www.youtube.com/watch?v=PpX7J-G2PEo) ๐Ÿ“ผ ๐Ÿ†“ * [ElasticSearch from the Bottom Up](https://www.elastic.co/blog/found-elasticsearch-from-the-bottom-up) ๐Ÿ“ผ ๐Ÿ†“ * [Index && Shard](https://www.youtube.com/watch?v=YsYUgZu9-Y4) ๐Ÿ“ผ ๐Ÿ†“ * [How many shards are too many shards?](https://www.youtube.com/watch?v=uryHucNEZXk) ๐Ÿ“ผ ๐Ÿ†“ * [Shard performance patterns](https://www.youtube.com/watch?v=aG6WPu08qBs) ๐Ÿ“ผ ๐Ÿ†“ * Lucene * [Elasticsearch Do's, Don'ts and Pro-Tips](https://www.youtube.com/watch?v=c9O5_a50aOQ) ๐Ÿ“ผ ๐Ÿ†“ * [Our Journey with Elasticsearch: Indexing 200M Daily Records](https://www.youtube.com/watch?v=nqUB0erNlec) ๐Ÿ“ผ ๐Ÿ†“ * Ledger * [What is a Ledger?](https://www.youtube.com/watch?v=BiEbMJ86dGQ) ๐Ÿ“ผ ๐Ÿ†“ * [Amazon QLDB: An engineer's deep dive on why this is a game changer](https://www.youtube.com/watch?v=ZfYDl4kaVCo) ๐Ÿ“ผ ๐Ÿ†“ * Distributed Systems * Theory * [Fallacies of Distributed Computing](https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing) ๐Ÿ“ฐ ๐Ÿ†“ * [Distributed Systems, 2nd Edition](https://learning.oreilly.com/library/view/distributed-systems-2nd/9781466552975/) ๐Ÿ“• ๐Ÿ’ฐ * [Distributed Systems Observability](https://learning.oreilly.com/library/view/distributed-systems-observability/9781492033431/) ๐Ÿ“• ๐Ÿ’ฐ * [Designing Distributed Systems](https://learning.oreilly.com/library/view/designing-distributed-systems/9781491983638/) ๐Ÿ“• ๐Ÿ’ฐ * [Distributed Denial of Service (DDoS)](https://learning.oreilly.com/library/view/distributed-denial-of/9781492026181/) ๐Ÿ“• ๐Ÿ’ฐ * [Distributed Systems Training](https://github.com/pingcap/talent-plan) ๐Ÿ“ฐ ๐Ÿ†“ * Service Discovery * [AWS CloudMap](https://youtu.be/fMGd9IUaotE) * [Airbnb - SmartStack](https://medium.com/airbnb-engineering/smartstack-service-discovery-in-the-cloud-4b8a080de619) * Bulkhead Pattern * [Bulkhead Pattern - Origin & Concept](https://www.youtube.com/watch?v=Kh3HxWk8YF4) ๐Ÿ“ผ ๐Ÿ†“ * [Bulkhead Pattern - Examples](https://www.youtube.com/watch?v=R2FT5edyKOg) ๐Ÿ“ผ ๐Ÿ†“ * Circuit-Breaker Pattern * [Circuit Breaker Pattern - Fault Toleranc Services](https://www.youtube.com/watch?v=ADHcBxEXvFA) ๐Ÿ“ผ ๐Ÿ†“ * Event-Driven Architecture * [Practical Event Driven Architecture](https://www.youtube.com/watch?v=X5PZ9TwDjI8) ๐Ÿ“ผ ๐Ÿ†“ * Event Sourcing / CQRS * [Go Back to the Future with Event Sourcing and CQRS](https://www.youtube.com/watch?v=iGt0DBOWDTs) ๐Ÿ“ผ ๐Ÿ†“ * [Event Sourcing You are doing it wrong - David Schmitz](https://www.youtube.com/watch?v=GzrZworHpIk) ๐Ÿ“ผ ๐Ÿ†“ * [The Many Meanings of Event-Driven Architecture - Martin Fowler](https://www.youtube.com/watch?v=STKCRSUsyP0) ๐Ÿ“ผ ๐Ÿ†“ * [An Introduction to CQRS and Event Sourcing Patterns - Mathew McLoughlin](https://www.youtube.com/watch?v=9a1PqwFrMP0) ๐Ÿ“ผ ๐Ÿ†“ * [Go Back to the Future with Event Sourcing and CQRS](https://www.youtube.com/watch?v=iGt0DBOWDTs) ๐Ÿ“ผ ๐Ÿ†“ * Streaming * [Kafka](https://kafka.apache.org) * [Introduction to Kafka](https://www.youtube.com/watch?v=UEg40Te8pnE) ๐Ÿ“ผ ๐Ÿ†“ * [Commit Logs in an Age of Microservices - Tim Berglund](https://www.youtube.com/watch?v=bbotWkCLuF0) ๐Ÿ“ผ ๐Ÿ†“ * [Should you put several event types in the same Kafka topic? - Martin Kleppmann](https://martin.kleppmann.com/2018/01/18/event-types-in-kafka-topic.html) ๐Ÿ“ฐ ๐Ÿ†“ * Practical * [Kafka: The Definitive Guide](https://learning.oreilly.com/library/view/kafka-the-definitive/9781491936153/) ๐Ÿ“• ๐Ÿ’ฐ * Internals * [The Log: What every software engineer should know about real-time data's unifying abstraction](https://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying) ๐Ÿ“ฐ ๐Ÿ†“ * [How Kafka's Storage Internals Work](https://thehoard.blog/how-kafkas-storage-internals-work-3a29b02e026) ๐Ÿ“ฐ ๐Ÿ†“ * [Why is Kafka so fast](http://searene.me/2017/07/09/Why-is-Kafka-so-fast/) ๐Ÿ“ฐ ๐Ÿ†“ * NATS * [Practical NATS: From Beginner to Pro](https://www.amazon.com/Practical-NATS-Beginner-Waldemar-Quevedo/dp/148423569X) ๐Ÿ“• ๐Ÿ’ฐ * Kinesis * ["Distributed Commit Log: Application Techniques for Transaction Processing" by David McNeil](https://www.youtube.com/watch?v=X2g0FFOV2e0) ๐Ÿ“ผ ๐Ÿ†“ * [Amazon Kinesis Data Streams: Auto-scaling the number of shards](https://medium.com/slalom-data-analytics/amazon-kinesis-data-streams-auto-scaling-the-number-of-shards-105dc967bed5) ๐Ÿ“ฐ ๐Ÿ†“ * Commit Log * [Commit Logs in an Age of Microservices - Tim Berglund](https://www.youtube.com/watch?v=bbotWkCLuF0) ๐Ÿ“ผ ๐Ÿ†“ * Build your Own * [14-bits/voik](https://github.com/14-bits/voik) ๐Ÿ’ป ๐Ÿ†“ * [Corfu - A distributed shared log](https://blog.acolyer.org/2017/05/02/corfu-a-distributed-shared-log/) ๐Ÿ“ฐ ๐Ÿ†“ * [Building a Distributed Message Log from Scratch by Tyler Treat - Video](https://www.youtube.com/watch?v=oKbm9XFxB2k) ๐Ÿ“ผ ๐Ÿ†“ * [Building a Distributed Log from Scratch, Part 1: Storage Mechanics](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-1-storage-mechanics/) ๐Ÿ“ฐ ๐Ÿ†“ * [Building a Distributed Log from Scratch, Part 2: Data Replication](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-2-data-replication) ๐Ÿ“ฐ ๐Ÿ†“ * [Building a Distributed Log from Scratch, Part 3: Scaling Message Delivery](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-3-scaling-message-delivery/) ๐Ÿ“ฐ ๐Ÿ†“ * [Building a Distributed Log from Scratch, Part 4: Trade-Offs and Lessons Learned](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-4-trade-offs-and-lessons-learned/) ๐Ÿ“ฐ ๐Ÿ†“ * [Building a Distributed Log from Scratch, Part 5: Sketching a New System](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-5-sketching-a-new-system/) ๐Ÿ“ฐ ๐Ÿ†“ * Code * [travisjeffery/Jocko](https://github.com/travisjeffery/jocko) - Distributed commit log service in Go * [zowens/commitlog](http://github.com/zowens/commitlog) - Append-only commit log library for Rust * [liftbridge-io/liftbridge](http://github.com/liftbridge-io/liftbridge) - Lightweight, fault-tolerant message streams * People to Follow * [Tyler Treat](https://twitter.com/tyler_treat?lang=en) ๐Ÿฆ * Load Balancing * [Taking Zero-Downtime Load Balancing even Further](https://engineeringblog.yelp.com/2017/05/taking-zero-downtime-load-balancing-even-further.html) ๐Ÿ“ฐ ๐Ÿ†“ * [Introducing the GitHub Load Balancer](https://github.blog/2016-09-22-introducing-glb/) ๐Ÿ“ฐ ๐Ÿ†“ * [Improving load balancing with a new consistent-hashing algorithm](https://medium.com/vimeo-engineering-blog/improving-load-balancing-with-a-new-consistent-hashing-algorithm-9f1bd75709ed) ๐Ÿ“ฐ ๐Ÿ†“ * [UDP Load Balancing with Keepalived](https://developers.500px.com/udp-load-balancing-with-keepalived-167382d7ad08) ๐Ÿ“ฐ ๐Ÿ†“ * [Introducing QALM, Uber's QoS Load Management Framework](https://eng.uber.com/qalm/) ๐Ÿ“ฐ ๐Ÿ†“ * Distributed Processing * Hadoop * [Hadoop: Up & Running](https://learning.oreilly.com/library/view/hadoop-the-definitive/9781491901687/) ๐Ÿ“• ๐Ÿ’ฐ * RPC - Remote Procedure Call * [Schema Evolution: AVRO, Protobufs and Thrift](https://martin.kleppmann.com/2012/12/05/schema-evolution-in-avro-protocol-buffers-thrift.html) ๐Ÿ“ฐ ๐Ÿ†“ * [AVRO vs Protobufs vs Thrift](https://www.slideshare.net/IgorAnishchenko/pb-vs-thrift-vs-avro) ๐Ÿ“ฐ ๐Ÿ†“ * Operations * Terminal * [Set of Bash Oneliners](https://github.com/onceupon/Bash-Oneliner) ๐Ÿ’ป ๐Ÿ†“ * Operating Systems * Courses * [CS8803 - Introduction to Operating Systems](https://eu.udacity.com/course/introduction-to-operating-systems--ud923) ๐ŸŽ“ ๐Ÿ†“ * [Annotations and Exercises](https://github.com/marceloboeira/CS8803) ๐Ÿ“ * Base Book (Choose 1): * [Operating Systems: Three Easy Pieces](http://pages.cs.wisc.edu/~remzi/OSTEP/) ๐Ÿ“• ๐Ÿ†“ โญ๏ธ * [Operating System Concepts](https://www.amazon.com/Operating-System-Concepts-Abraham-Silberschatz/dp/1118063333/ref=dp_ob_title_bk) ๐Ÿ“• ๐Ÿ’ฐ * [Operating System Concepts: Essentials](https://www.amazon.com/Operating-Concepts-Essentials-Abraham-Silberschatz/dp/1118804929/ref=sr_1_1?s=books&ie=UTF8&qid=1415311059&sr=1-1&keywords=operating+system+concepts+essentials) ๐Ÿ“• ๐Ÿ’ฐ * [Modern Operating Systems](https://www.amazon.com/Modern-Operating-Systems-4th-Edition/dp/013359162X/ref=dp_ob_title_bk) ๐Ÿ“• ๐Ÿ’ฐ * Computer Architecture * [TUHS Lectures](https://minnie.tuhs.org/CompArch/Lectures/) ๐Ÿ†“ ๐Ÿ“ฐ ๐ŸŽ“ * [Introduction to Systems Architecture](https://minnie.tuhs.org/CompArch/Lectures/week01.html) * [Instruction Set Architecture Design](https://minnie.tuhs.org/CompArch/Lectures/week02.html) * [Addressing Modes & CPU Internals](https://minnie.tuhs.org/CompArch/Lectures/week03.html) * [Execution Flow, Branches, Function Calls](https://minnie.tuhs.org/CompArch/Lectures/week04.html) * [User- and Kernel Mode, System Calls, I/O, Exceptions](https://minnie.tuhs.org/CompArch/Lectures/week05.html) * [CPU Memory Management, Context Switching](https://minnie.tuhs.org/CompArch/Lectures/week06.html) * [Introduction to Operating Systems](https://minnie.tuhs.org/CompArch/Lectures/week07.html) * [Processes](https://minnie.tuhs.org/CompArch/Lectures/week08.html) * [Introduction to Memory Management](https://minnie.tuhs.org/CompArch/Lectures/week09.html) * [Virtual Memory, Disk Devices](https://minnie.tuhs.org/CompArch/Lectures/week10.html) * [Filesystems & Their Performance](https://minnie.tuhs.org/CompArch/Lectures/week11.html) * [IPC, Synchronisation and Threads](https://minnie.tuhs.org/CompArch/Lectures/week12.html) * File Descriptor * [File Descriptors Explained](https://www.youtube.com/watch?v=KM5sRWAYqaw) ๐Ÿ“ผ ๐Ÿ†“ * [File Descriptors, Unix sockets and other POSIX wizardry - Christian Heimes](https://www.youtube.com/watch?v=Ftg8fjY_YWU) ๐Ÿ“ผ ๐Ÿ†“ * ["Everything is a file" in UNIX](https://www.youtube.com/watch?v=dDwXnB6XeiA) ๐Ÿ“ผ ๐Ÿ†“ * Threads * ["An Introduction to Programming with Threads"](https://s3.amazonaws.com/content.udacity-data.com/courses/ud923/references/ud923-birrell-paper.pdf) by Birrell ๐Ÿ“ฐ ๐Ÿ†“ * POSIX Threads (PThreads) * [PThreads / POSIX Threads Coding Examples](https://computing.llnl.gov/tutorials/pthreads/) ๐Ÿ“ฐ ๐Ÿ†“ * IBM Series * [POSIX threads explained: Part 1](https://www.ibm.com/developerworks/library/l-posix1/index.html) ๐Ÿ“ฐ ๐Ÿ†“ * [POSIX threads explained: Part 2](https://www.ibm.com/developerworks/library/l-posix2/index.html) ๐Ÿ“ฐ ๐Ÿ†“ * [POSIX threads explained: Part 3](https://www.ibm.com/developerworks/library/l-posix3/index.html) ๐Ÿ“ฐ ๐Ÿ†“ * [Beyond Multiprocessing: Multithreading the Sun OS Kernel by Eykholt](https://s3.amazonaws.com/content.udacity-data.com/courses/ud923/references/ud923-eykholt-paper.pdf) ๐Ÿ“ฐ ๐Ÿ†“ * [Implementing Lightweight Threads by Stein and Shah](https://s3.amazonaws.com/content.udacity-data.com/courses/ud923/references/ud923-stein-shah-paper.pdf) ๐Ÿ“ฐ ๐Ÿ†“ * [How to create and join threads in C (pthreads)](https://www.youtube.com/watch?v=uA8X5zNOGw8) ๐Ÿ“ผ ๐Ÿ†“ * [Programming with POSIX ยฎ Threads](https://learning.oreilly.com/library/view/programming-with-posix/0201633922/) ๐Ÿ“• ๐Ÿ’ฐ * CPU Scheduling * Timeslice * MLFQ - Multi Level Feedback Queue * [CPU scheduling Practice - FCFS, SJF, MLFQ](https://www.youtube.com/watch?v=FYcc9D8llF0) ๐Ÿ“ผ ๐Ÿ†“ * [Multi level queues and multi level feedback queues](https://www.youtube.com/watch?v=1w9FybdNi_Y) ๐Ÿ“ผ ๐Ÿ†“ * [Designing of vague logic based multilevel feedback queue scheduler](https://www.researchgate.net/publication/283959697_Designing_of_vague_logic_based_multilevel_feedback_queue_scheduler) ๐Ÿ†“ ๐Ÿ“ฐ * Linux * O(n), O(1) and CFS * [Thread on CFS](https://web.archive.org/web/20120205030735/http://kerneltrap.org/node/11737) ๐Ÿ†“ ๐ŸŒ * [The Linux Kernel Scheduler (For Beginners)](https://www.youtube.com/watch?v=5WtnnzpwEuA) ๐Ÿ“ผ ๐Ÿ†“ * [Operating System #21 Scheduling in Linux: O(n), O(1) Scheduler](https://www.youtube.com/watch?v=vF3KKMI3_1s) ๐Ÿ“ผ ๐Ÿ†“ * Virtual Memory * [The Heap: what does malloc() do?](https://www.youtube.com/watch?v=HPDBOhiKaD8) ๐Ÿ“ผ ๐Ÿ†“ * mmap * [How processes get more memory](https://www.youtube.com/watch?v=XV5sRaSVtXQ) ๐Ÿ“ผ ๐Ÿ†“ * [How to Map Files into Memory in C (mmap)](https://www.youtube.com/watch?v=m7E9piHcfr4) ๐Ÿ“ผ ๐Ÿ†“ * Linux * [Linux Cross Reference](https://elixir.bootlin.com/linux/v3.17/source/include/linux/kthread.h#L66) ๐ŸŒ ๐Ÿ†“ * [Interactive Linux Kernel Map](http://www.makelinux.net/kernel_map/) ๐ŸŒ ๐Ÿ†“ * Reference Youtube channels * [Jacob Sorber](https://www.youtube.com/channel/UCwd5VFu4KoJNjkWJZMFJGHQ) * Network * [Computer Networks, 5th Edition](http://www.mypearsonstore.com/bookstore/computer-networks-9780132126953?xid=PSED) ๐Ÿ“• ๐Ÿ’ฐ * Protocols * DNS * Socket * UDP * TCP * Build Your Own * [Implementing TCP in Rust (part 1)](https://www.youtube.com/watch?v=bzja9fQWzdA) ๐Ÿ“ผ ๐Ÿ†“ * [Implementing TCP in Rust (part 2)](https://www.youtube.com/watch?v=OCpt1I0MWXE) ๐Ÿ“ผ ๐Ÿ†“ * [Implementing TCP in Rust (part 3)](https://www.youtube.com/watch?v=8GE6ltLRJA4) ๐Ÿ“ผ ๐Ÿ†“ * [Implementing TCP in Rust (code)](https://github.com/jonhoo/rust-tcp) ๐Ÿ†“ * SSH * HTTP/S * SSL-TLS * Edge * CDN * "Global Accelerator" * [AWS Global Accelerator Introduction](https://www.youtube.com/watch?v=L-mmnEbiTmc) ๐Ÿ“ผ ๐Ÿ†“ * 11:00 - Explanation regarding GA * [AWS Global Accelerator](https://www.youtube.com/watch?v=YqcEntZ8pQ4) ๐Ÿ“ผ ๐Ÿ†“ * VPC - Virtual private Cloud * [Practical VPC Design](https://aws.amazon.com/blogs/startups/practical-vpc-design/) ๐Ÿ“ฐ ๐Ÿ†“ * Multi-VPC * [One to Many: Evolving VPC Design](https://aws.amazon.com/blogs/architecture/one-to-many-evolving-vpc-design) ๐Ÿ“ฐ ๐Ÿ†“ * [Using VPC Sharing for a Cost-Effective Multi-Account Microservice Architecture](https://aws.amazon.com/blogs/architecture/using-vpc-sharing-for-a-cost-effective-multi-account-microservice-architecture/) ๐Ÿ“ฐ ๐Ÿ†“ * Sharing * [VPC sharing: A new approach to multiple accounts and VPC management](https://aws.amazon.com/blogs/networking-and-content-delivery/vpc-sharing-a-new-approach-to-multiple-accounts-and-vpc-management/) ๐Ÿ“ฐ ๐Ÿ†“ * Peering * PrivateLink * TransitGateway * [Use an AWS Transit Gateway to Simplify Your Network Architecture](https://aws.amazon.com/blogs/aws/new-use-an-aws-transit-gateway-to-simplify-your-network-architecture/) ๐Ÿ“ฐ ๐Ÿ†“ * [Creating a single internet exit point from multiple VPCs Using AWS Transit Gateway](https://aws.amazon.com/blogs/networking-and-content-delivery/creating-a-single-internet-exit-point-from-multiple-vpcs-using-aws-transit-gateway/) ๐Ÿ“ฐ ๐Ÿ†“ * VPN * [Site to Site VPN](https://www.youtube.com/watch?v=qmKkbuS9gRs) ๐Ÿ“ผ ๐Ÿ†“ * Monitoring * Metrics * Prometheus * [Prometheus: Up & Running: Infrastructure and Application Performance Monitoring](https://www.amazon.de/gp/product/1492034142?pf_rd_p=99260c3e-e149-406d-b475-c299891fcd91&pf_rd_r=M0874DR76K58PTVG1NV7) ๐Ÿ“• ๐Ÿ’ฐ * InfluxDB * [InfluxDB - Time Series Database](https://www.youtube.com/watch?v=2SUBRE6wGiA) ๐Ÿ“ผ ๐Ÿ†“ * Tracing * [Intro to Distributed Tracing](https://www.kartar.net/2019/07/intro-to-distributed-tracing/) ๐Ÿ“ฐ ๐Ÿ†“ * [Mastering Distributed Tracing](https://learning.oreilly.com/library/view/mastering-distributed-tracing/9781788628464/) ๐Ÿ“• ๐Ÿ’ฐ * Infrastructure as Code * [What is IaC?](https://www.youtube.com/watch?v=RO7VcUAsf-I) ๐Ÿ“ผ ๐Ÿ†“ * [Getting Started with IaC](https://www.youtube.com/watch?v=G3D14I5_NIk) ๐Ÿ“ผ ๐Ÿ†“ * Containers * [Docker](https://www.docker.com) * Guides * [Dockerfile Best Practices - ThoughtWorks](https://blog.docker.com/2019/07/intro-guide-to-dockerfile-best-practices/) ๐Ÿ“ฐ ๐Ÿ†“ * Testing * [goss/dgoss](https://github.com/aelsabbahy/goss) - Test docker images โญ๏ธ * [marceloboeira/kurz](https://github.com/marceloboeira/kurz) - Example setup โœ๐Ÿป * Orchestration * ECS * [ECS Workshop](https://ecsworkshop.com) ๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ง ๐Ÿ†“ * Internals * [Service Discovery](https://www.youtube.com/watch?v=WLD7wqJzKEw) ๐Ÿ“ผ ๐Ÿ†“ * [Network Deep Dive](https://www.youtube.com/watch?v=2fwCg82pMI4) ๐Ÿ“ผ ๐Ÿ†“ * Kubernetes * History * [Borg, Omega, and Kubernetes](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44843.pdf) ๐Ÿ“ฐ ๐Ÿ†“ * [Dockercon keynote: Eric Brewer (Google) - First k8s presentation](https://www.youtube.com/watch?v=YrxnVKZeqK8) ๐Ÿ“ผ ๐Ÿ†“ * Internals * Introduction * Microsoft Azure Videos * [Why you should care about containers](https://www.youtube.com/watch?v=EUitQ8DaZW8) ๐Ÿ“ผ ๐Ÿ†“ * [How Kubernetes works](https://www.youtube.com/watch?v=daVUONZqn88) ๐Ÿ“ผ ๐Ÿ†“ * [How Kubernetes deployments work](https://www.youtube.com/watch?v=mNK14yXIZF4) ๐Ÿ“ผ ๐Ÿ†“ * [Understand Serverless Kubernetes and Serverless on Kubernetes](https://www.youtube.com/watch?v=xL6lixC4D8Q) ๐Ÿ“ผ ๐Ÿ†“ * [How the Kubernetes scheduler works](https://www.youtube.com/watch?v=rDCWxkvPlAw) ๐Ÿ“ผ ๐Ÿ†“ * [Setting up a Kubernetes build pipeline](https://www.youtube.com/watch?v=5irsAdKoEBU) ๐Ÿ“ผ ๐Ÿ†“ * [Overview of common Kubernetes scenarios](https://www.youtube.com/watch?v=zd8vYhrFXp4) ๐Ÿ“ผ ๐Ÿ†“ * [How volumes and storage work in Kubernetes](https://www.youtube.com/watch?v=inJ7YJ-jt8I) ๐Ÿ“ผ ๐Ÿ†“ * [The basics of stateful applications in Kubernetes](https://www.youtube.com/watch?v=GieXzb91I40) ๐Ÿ“ผ ๐Ÿ†“ * [Understanding Distributed Consensus in etcd and Kubernetes - Laura Frank, CloudBees](https://www.youtube.com/watch?v=n9VKAKwBj_0) ๐Ÿ“ผ ๐Ÿ†“ * [Kubernetes Deconstructed: Understanding Kubernetes by Breaking It Down - Carson Anderson, DOMO](https://www.youtube.com/watch?v=90kZRyPcRZw) ๐Ÿ“ผ ๐Ÿ†“ * [Internals Advanced](https://container.training) General talks about containers - ๐Ÿ†“ ๐Ÿ“ผ * [Kubernetes Up and Running](http://shop.oreilly.com/product/0636920043874.do#tab_04_2) ๐Ÿ“• ๐Ÿ’ฐ * [Key Kubernetes Concepts](https://towardsdatascience.com/key-kubernetes-concepts-62939f4bc08e) ๐Ÿ“ฐ ๐Ÿ†“ * [Programming Kubernetes](https://learning.oreilly.com/library/view/programming-kubernetes/9781492047094/) ๐Ÿ“• ๐Ÿ’ฐ * Networking * [A Guide to the Kubernetes Networking Model](https://sookocheff.com/post/kubernetes/understanding-kubernetes-networking-model/) ๐Ÿ“ฐ ๐Ÿ†“ * [How does Traffic Flow inside a Kubernetes Cluster?](https://stackoverflow.com/questions/52241501/how-does-traffic-flow-inside-a-kubernetes-cluster) ๐Ÿ“ฐ ๐Ÿ†“ * Exposing Services * [NodePort vs LB vs Ingress](https://medium.com/google-cloud/kubernetes-nodeport-vs-loadbalancer-vs-ingress-when-should-i-use-what-922f010849e0) ๐Ÿ“ฐ ๐Ÿ†“ * Interesting to understand why ingress is a better option than LB when exposing individual services * LB creates a new IP for every service, it can get expensive and difficult to handle * Ingress can manage multiple domains and paths for many services without difficulty/effort * CNI Plugins * [Kubernetes Networking: How to Write Your Own CNI Plug-in with Bash](https://www.altoros.com/blog/kubernetes-networking-writing-your-own-simple-cni-plug-in-with-bash/) * Identity & Access * RBAC * [RBAC.dev - List of Resources](https://github.com/mhausenblas/rbac.dev) ๐ŸŒ ๐Ÿ†“ * Operators * [Introducing Operators](https://coreos.com/blog/introducing-operators.html) ๐Ÿ“ฐ ๐Ÿ†“ * Provider * EKS - Elastic Kubernetes Service * [EKS - Deep Dive](https://www.youtube.com/watch?v=EDaGpxZ6Qi0) ๐Ÿ“ผ ๐Ÿ“ผ * 08:50 - Control Plane * 10:19 - Control Plane Internals (not shared tenent, endpoints exposed to internet, worker nodes need access to the internet, NLB) * 19:00 - Version Updates * 20:00 - Authentication (IAM -> Authentication | RBAC -> Authorization) * 20:00 - [AMI is OpenSource](https://github.com/awslabs/amazon-eks-ami) * [EKS Workshop](https://www.eksworkshop.com) ๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ง ๐Ÿ†“ * [Custom EKS AMIs](https://aws.amazon.com/premiumsupport/knowledge-center/eks-custom-linux-ami/) ๐Ÿ“ฐ ๐Ÿ†“ * Metrics * [EKS + CloudWatch](https://www.youtube.com/watch?v=daLmE0tIcuk) ๐Ÿ“ผ ๐Ÿ†“ * [EKS + CloudWatch: Container Insights](https://www.youtube.com/watch?v=kn5TVKzBLrU) ๐Ÿ“ผ ๐Ÿ†“ * [Setup Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-setup-metrics.html) ๐Ÿ“ฐ ๐Ÿ†“ * Tracing * [AWS X-Ray with EKS](https://aws.amazon.com/blogs/compute/application-tracing-on-kubernetes-with-aws-x-ray/) ๐Ÿ“ฐ ๐Ÿ†“ * Windows * [Containerize .NET Apps with Amazon EKS](https://www.youtube.com/watch?v=GIH-MfkZPJA) ๐Ÿ“ผ ๐Ÿ†“ * Managed Node Groups * [EKS Managed Node Groups](https://aws.amazon.com/blogs/containers/eks-managed-node-groups/) ๐Ÿ“ฐ ๐Ÿ†“ * Tenancy * [EKS Multi Tenency Design Considerations](https://aws.amazon.com/blogs/containers/multi-tenant-design-considerations-for-amazon-eks-clusters/) ๐Ÿ“ฐ ๐Ÿ†“ * [Cost Management for MultiTenant Kubernetes](https://aws.amazon.com/blogs/containers/how-to-track-costs-in-multi-tenant-amazon-eks-clusters-using-kubecost/) ๐Ÿ“ฐ ๐Ÿ†“ * [EKS - Tenancy Best Practices](https://aws.github.io/aws-eks-best-practices/security/docs/multitenancy/) ๐Ÿ“ฐ ๐Ÿ†“ * [Loft - Kubernetes MultiTenancy](https://loft.sh/features/kubernetes-multi-tenancy) * [Architecting multi-tenant PaaS offerings with Amazon EKS](https://www.youtube.com/watch?v=P29eL_51iYU) ๐Ÿ“ผ ๐Ÿ†“ * Service Mesh * [What is service mesh?](https://www.youtube.com/watch?v=vh1YtWjfcyk) ๐Ÿ“ผ ๐Ÿ†“ * Istio * [Istio Explained - IBM Videos](https://www.youtube.com/watch?v=6zDrLvpfCK4) ๐Ÿ“ผ ๐Ÿ†“ * [What is Istio? ](https://www.youtube.com/watch?v=1iyFq2VaL5Y) ๐Ÿ“ผ ๐Ÿ†“ * Nomad * Console * [Istio: Up & Running](https://learning.oreilly.com/library/view/istio-up-and/9781492043775/) ๐Ÿ“• ๐Ÿ’ฐ * AppMesh * [AWS Container Day - App Mesh (Service Mesh Magic)](https://www.youtube.com/watch?v=hfzWtXKrv88) ๐Ÿ†“ ๐Ÿ“ผ * [AppMesh Workshop](https://www.appmeshworkshop.com) ๐Ÿ‘จ๐Ÿปโ€๐Ÿ”ง๐Ÿ†“ * [Microservice Deployment Strategies with AWS App Mesh](https://www.youtube.com/watch?v=UATTjvjoYEE) ๐Ÿ†“ ๐Ÿ“ผ * Provisioning * Terraform * [Introduction to Terraform](https://www.youtube.com/watch?v=h970ZBgKINg) ๐Ÿ“ผ ๐Ÿ†“ * [Infrastructure as Code in the Real World?](https://www.youtube.com/watch?v=S6vS5mzivFo) ๐Ÿ“ผ ๐Ÿ†“ * [Terraform: Up and Running](https://learning.oreilly.com/library/view/terraform-up-and/9781491977071/) ๐Ÿ“• ๐Ÿ’ฐ * Packer * [The Packer Book](https://learning.oreilly.com/library/view/the-packer-book/9780988820272/) ๐Ÿ“• ๐Ÿ’ฐ * [CDK - CloudFormation Development Kit](https://docs.aws.amazon.com/cdk/latest/guide/home.html) * [Infrastructure is Code with CDK](https://www.youtube.com/watch?v=ZWCvNFUN-sU&feature=youtu.be) ๐Ÿ“ผ ๐Ÿ†“ * [CDK Best Practices](https://github.com/kevinslin/open-cdk) ๐Ÿ’ป ๐Ÿ†“ ๐Ÿ“ฐ * Linux * [LFS - Linux from Scratch Book](http://www.linuxfromscratch.org/lfs/downloads/8.4/LFS-BOOK-8.4.pdf) ๐Ÿ“ผ ๐Ÿ†“ * systemd * [systemd Essentials](https://www.digitalocean.com/community/tutorials/systemd-essentials-working-with-services-units-and-the-journal) ๐Ÿ“ฐ ๐Ÿ†“ * Debug * Core Dumps * [Debugging with Core Dumps](https://www.youtube.com/watch?v=GV10eIuPs9k) ๐Ÿ“ผ ๐Ÿ†“ * Performance * Profiling * Linux Performance * [Linux Network Performance Parameters - Leandro Moreira](https://github.com/leandromoreira/linux-network-performance-parameters) ๐Ÿ“ฐ ๐Ÿ†“ ๐Ÿ’ป * [Linux Performance Hub - Brendan Gregg](http://www.brendangregg.com/linuxperf.html) ๐Ÿ“ฐ ๐Ÿ†“ ๐Ÿ’ป * [Linux Perf](http://www.brendangregg.com/perf.html) ๐Ÿ“ฐ ๐Ÿ†“ ๐Ÿ’ป * [Linux Extended BPF (eBPF) Tracing Tools](http://www.brendangregg.com/ebpf.html) ๐Ÿ“ฐ ๐Ÿ†“ ๐Ÿ’ป * Charts * [Linux Performance Observability Tools](http://www.brendangregg.com/Perf/linux_observability_tools.png) ๐Ÿ™ ๐Ÿ†“ * [Linux Performance Benchmark Tools](http://www.brendangregg.com/Perf/linux_benchmarking_tools.png) ๐Ÿ™ ๐Ÿ†“ * [Linux Performance Tuning Tools](http://www.brendangregg.com/Perf/linux_tuning_tools.png) ๐Ÿ™ ๐Ÿ†“ * [Netflix - Linux Systems Performance - Brendan Gregg](https://www.youtube.com/watch?v=CbmEDXq7es0) ๐Ÿ“ผ ๐Ÿ†“ * [Netflix - Linux Performance - Brendan Gregg](https://www.youtube.com/watch?v=FJW8nGV4jxY) ๐Ÿ“ผ ๐Ÿ†“ * [How Netflix Tunes Amazon EC2 Instances for Performance - Brendan Gregg](https://www.youtube.com/watch?v=89fYOo1V2pA) ๐Ÿ“ผ ๐Ÿ†“ * Docker Container * [Netflix - Container Performance Analysis](https://www.youtube.com/watch?v=bK9A5ODIgac) ๐Ÿ“ผ ๐Ÿ†“ * Applications * dtrace * [DTrace Book Scripts](https://github.com/brendangregg/DTrace-book-scripts) ๐Ÿ’ป ๐Ÿ†“ * Rust * [Rustt + Dtrace + Flamegraphs](http://carol-nichols.com/2017/04/20/rust-profiling-with-dtrace-on-osx/) ๐Ÿ“ฐ ๐Ÿ†“ * Flamegraph * [Tooling to generate FlameGraphs](https://github.com/brendangregg/FlameGraph) ๐Ÿ’ป ๐Ÿ†“ * [Deep dive to CPU FlameGraphs](http://www.brendangregg.com/FlameGraphs/cpuflamegraphs.html) ๐Ÿ“ฐ ๐Ÿ’ป ๐Ÿ†“ * [Speedscope - visualization tool](http://jamie-wong.com/post/speedscope/) ๐Ÿ’ป ๐Ÿ†“ * [Presentation on FlameGraphs](https://speakerdeck.com/mrfoto/what-are-flame-graphs-and-how-to-read-them) ๐ŸŽฅ ๐Ÿ†“ * Serverless * [SAM](https://aws.amazon.com/serverless/sam/)- Serverless Application Model * [What is SAM?](https://youtu.be/1dzihtC5LJ0) ๐Ÿ“ผ ๐Ÿ†“ * Lambda * Layers * [What are Lambda Layers?](https://www.youtube.com/watch?v=ebhcs-9FYJA) ๐Ÿ“ฐ ๐Ÿ†“ * Extensions * [Intro to Extensions for AWS Lambda](https://aws.amazon.com/blogs/compute/introducing-aws-lambda-extensions-in-preview/) ๐Ÿ“ฐ ๐Ÿ†“ * [Building Extensions for AWS Lambda](https://aws.amazon.com/blogs/compute/building-extensions-for-aws-lambda-in-preview/) ๐Ÿ“ฐ ๐Ÿ†“ * [Building Extension API](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-extensions-api.html) ๐Ÿ“ฐ ๐Ÿ†“ * Security * Authentication * OpenID/OICD * [Amazon Cognito](https://www.youtube.com/watch?v=OAR4ZHP8DEg) ๐Ÿ“ผ ๐Ÿ†“ * Firewall * WAF - Web Application Firewall * [What is a Web Application Firewall (WAF)?](https://www.youtube.com/watch?v=p8CQcF_9280) ๐Ÿ“ผ ๐Ÿ†“ * [The AWS Web Application Firewall (WAF)](https://youtu.be/SmF_wQuZ7z4) ๐Ÿ“ผ ๐Ÿ†“ * Encryption * Theory * History * Ceasar * Symetric * Asymetric * Cloud * [How Encryption Works @ AWS](https://www.youtube.com/watch?v=plv7PQZICCM) ๐Ÿ“ผ ๐Ÿ†“ * [KMS](https://aws.amazon.com/kms/) * [Encryption and Key Management @ AWS](https://www.youtube.com/watch?v=uhXalpNzPU4) ๐Ÿ“ผ ๐Ÿ†“ * Certificates * Service Name Indication * [What is SNI?](https://www.youtube.com/watch?v=manTiXESYG0) ๐Ÿ“ผ ๐Ÿ†“ * Monitoring * Data Leaks * [Amazon Macie](https://www.youtube.com/watch?v=8piwEQJJXdo) ๐Ÿ“ผ ๐Ÿ†“ * Multi-tenancy * SaaS * [AWS re:Invent 2019: SaaS tenant isolation patterns](https://www.youtube.com/watch?v=fuDZq-EspNA) * Cost * Cloud * AWS * [Savings Plans vs Reserved Instances](https://www.youtube.com/watch?v=c_zlPQimrvY) ๐Ÿ“ผ ๐Ÿ†“ * [How to save with AWS Saving Plans](https://www.youtube.com/watch?v=uQ9ry-9uUvo) ๐Ÿ“ผ ๐Ÿ†“ * Network * [Basic Networking](https://www.youtube.com/watch?v=hiKPPy584Mg)