Software
Data Structures and Algorithms
- Hand written notes
- CodeNCode youtube
- Graph Theory 1
- Graph Theory 2
- Disjoint Data Set
- Segment Tree
- Mo’s Algo & SQRT
- Bit Manipulation
- Queries on trees
- Aditya Verma youtube
Heap Playlist- Stack
- Binary Search
- Sliding window
- Recursion
- Backtracking
- Dynamic programming
- Erricto Algorithms youtube (Algo lectures playlist)
- cp-algorithms
- Algebra
- Data structures
- Dynamic programming
- String processing
- Linear algebra
- Combinatorics
- Numerical methods
- Geometry
- Graphs
- Miscellaneous
- Leetcode hard problems
Object Oriented Design
- (Design Guru) Grokking the Object Oriented Design Interview
- (Code with Mosh) Mastering Design Patterns
- (Code with Mosh) C++
- Leetcode Design questions
Concurrency
- (Design Guru) Grokking Multithreaded and Concurrency for Coding Interviews
- (Youtube Mike Shah) Modern C++ (cpp) Concurrency playlist
- (Book) C++ Concurrency in Action (2nd edition) (592 pages) by Anthony Williams
- C++ Concurrency support libraries
- Leetcode concurrency questions
Cache
System Design
- Books by ByteByteGo
- System Design Interview - An insider’s guide
- System Design Interview - An Insider’s Guide: Volume 2
- Machine Learning Design Interview
- (book) Hacking the system design interview: Real Big Tech Interview Questions and In-depth solutions
- Design guru system design interview roadmap
- Grokking System Design Fundamentals
- Grokking the System Design Interview
- Grokking the Advanced System Design Interview
- Grokking Microservices Design Patterns
- Grokking Design Patterns for Engineers and Managers
- Kiki’s Bytes youtube
- (book) Load Balancing Servers, Firewalls, and Caches
- System Design for Interview and Beyond course youtube playlist
- System Design Interview youtube channel
- karanpratapsingh/system-design github
- ByteByteGo youtube channel
- donnemartin/system-design-primer github
- Quastor blog
Distributed Computing
- Distributed systems course by Chris Colohan website, playlist
- Distributed Systems lecture series by Martin Kleppmann link
- CSE 138 Distributed Systems lectures Spring 2021 by Lindsey Kuper link
- MIT 6.5840 Distributed Systems Spring 2021 link
- MIT 6.858 Computer system security link
- Books
- Distributed systems by Andrew Tanenbaum
- Designing data intensive applications
- Database internals: A Deep Dive into how distributed data systems work
- Google SRE books
- Site Reliability Engineering How Google Runs production systems
- Building secure and reliable systems
- The Site Reliability Workbook
- System Performance: Enterprise and the Cloud 2nd edition
- Understanding Software Dynamics by Richard L. Sites
- BFP
- BFP Performance Tools Linux System and Application Observability by Brendan Gregg
- Learning eBFP: Programming the Linux Kernel for Enhanced Observability, Networking, and Security
- Linux Observability with BPF: Advanced Programming for Performance Analysis and Networking
- Capacity Planning
- The Art of Capacity Planning: Scaling Web Resources in the Cloud
- A-Z of Capacity Management: Practical Guide for Implementing Enterprise IT Monitoring & Capacity Planning
- fly.io
- Conferences
- Operating SYstems Design and Implementation (OSDI)
- Symposium on Operating Systems Principles (SOSP)
- Tigerbeetle Systems Distributed link
Database and SQL
- (Design guru) Grokking SQL for Tech Interviews
- (Code with Mosh) Complete SQL Mastery
- (book) Learning SQL
- Supplement with MySQL syntax docs
- (book) SQL Performance Explained
- (book) SQL Antipatterns volume 1
- Leetcode sql problems
- CMU courses
- Books
- Database systems concepts 7th edition
- The Data Warehouse Toolkit 3rd edition
Behavioral
- (Design Guru) Grokking Modern Behavioral Interview
- Tech Interview Handbook - Behavioral Interview section
- Find list of all common questions and prepare answers using STAR method and ChatGPT.
Salary
- (DesignGuru) Grokking Tech Salary Negotiations
- levels.fyi blog
- Negotiating salary reddit post
- Amy Miller youtube (Let’s Talk Money playlist)
- Andrew LaCivitia (Salary Negotiation Tips playlist)
- Deepak Malhotra youtube
- How to Negotiate Compensation Like A Boss youtube video
- Skim Never Split the Difference book
- Understand how stock works in startups and different types
- https://www.youtube.com/watch?v=5pNZw92CCAo
Other
Random topics
- Cryptography
- Theory of computation
- Security
- Information theory
- Computer architecture
- Operating systems
- Quantum computing
- Linear algebra
- Differential calculus
- integral calculus
- differential equations
- matrices