DSA and System Design
42 emails
Current Revision: v2026.1
Algorithms, data structures, and system design prep.
This newsletter is a highly-technical series of content about data structures, algorithms, and system desing. We cover the common patterns, troubleshooting, Big O Notation, scalability, sharding, and more.
Audience
Technical audiences, we go way down some rabbit holes in this series.
Recommended pace
Daily if actively looking for work, twice a week if preparing, weekly if looking for review material.
Prior Knowledge
Suitable for entry-level technical audiences from internships to senior-level developers/architects.
Topics / lessons
This is the current set of emails/lessons in this series.
- DSA & System Design: Your Interview Journey Starts Here
- Responsible AI Usage during the Job Search
- How to Study DSA Without Burning Out
- Troubleshooting: Turn Errors Into Your Interview Superpowers
- Big O Notation: Your Code's Report Card
- Arrays, and Linked List basics
- Advanced Linked Lists: Doubly-Linked Lists and More
- Hash Maps: Your Fast Lookup Tool
- Stacks and Queues: Order Matters
- Binary Trees: Organizing Data Hierarchically
- Graphs: Mapping Relationships Between Data
- Sorting Algorithms: Start with Bubble and Selection Sort
- Advanced Sorting: Insertion Sort and Merge Sort
- Advanced Sorting: Quick Sort and Heap Sort
- Sliding Window: Your Subarray Superpower
- Search Algorithms: Linear and Binary Search
- Two Pointers: Your Pairing Superpower
- Fast and Slow Pointers: Cycle Detection
- Recursion: Thinking in Loops and Smaller Pieces
- Dynamic Programming: Smart Problem Solving
- Top K Elements: Find Your Favorites
- Backtracking: Try, Fail, Try Again
- Binary Search Patterns: Beyond Simple Lookups
- Common DSA Mistakes and How to Avoid Them
- Handling Questions Outside Your Comfort Zone
- Mock Interviews: Practice Makes Progress
- System Design Interview Practice
- Scalability: Growing Your Application Gracefully
- Caching: Your Application's Speed Boost
- Separation of Concerns: Do One Thing Well
- Consistency Models: Making Smart Tradeoffs
- Publish-Subscribe Pattern
- Load Balancing: Sharing the Work
- Rate Limiting: Keep Your System Healthy
- Consistency and Availability: The CAP Theorem
- Sharding and Partitioning for Database Scalability
- Database Indexing: Speed Up Your Queries
- Distributed File Storage: Handle Files at Scale
- Notification System Design
- Chat System Architecture
- Worker Queues: Handle Background Tasks
- DSA and System Design: A summary of the newsletter series