Big Chonkin' Interview Prep Kit
An ever growing list of the articles, videos, and sites I have used (or intend to use in the future) while preparing for interviews. Take a break from grinding out leet code questions and brush up on some concepts!
Distributed Systems Concepts
- Distributed Systems Cheat Sheet
- CAP Theorem Introduction
- (Video!) Deeper Into CAP Theorem
- Consistency Models and Replication
- Idempotency Example From AirBnB
Talking About Your Tech Stack
- See Popular Tech Stacks By Company
- Dictionary of Data Models and DBMS Terms
- A Helpful List of Popular Database Technologies With Model Type and Popularity Score
- Database ACID Compliance
- Deep Dive Into Apache Kafka
- More on Kafka Replication
- Postgres Two Phase Commit Protocol
- How Redis Handles Consistency, Availability and Partition Tolerance
- Comparing Message Queue Services
- Exploring Different Types of Azure Storage
- Understanding Containers and Virtual Machines
- Comparing Nomad and Kubernetes
- Comparing Monitoring Tools
- Popular Interview Questions About the Java Swing Framework
System Design
- A Comprehensive Systems Design Primer
- (Video!) A General Approach to System Design Questions
- Breaking Down a System Design Question Into 7 Steps
- (Video!) Designing Twitter
- (Video!) Designing WhatsApp
- Design Instagram
- Design a URL Shortener
- Design an Auto-Complete Feature
- Design a LRU Cache
- Design a Rate-Limiting Algorithm
Languages and Programming Styles
- S is for Single Responsibility
- O is for Open Closed Principle
- L is for Liskov Substitution Principle
- I is for Interface Segregation
- D if for Dependency Inversion
- Popular Object Oriented Programming Questions
- A Brief Description of Java Modifiers
- Functional Programming Cheat Sheet
- Functional Programming Question & Answer Set in OCaml
- Sound Smart Talking About Monads
The Freakin' Whiteboard AKA Algorithms & Data Structures
- A General Approach to Whiteboard Problems
- Breaking Synamic Programming Problems Down in 7 Steps
- Dynamic Programming Principles
- Dynamic Programming Practice Problems
- The Greedy Algorithm Technique
- Review of Recursion and the Call Stack
- Data Structures Cheat Sheet