Welcome to my comprehensive SDE Interview Prep repository! This repo is a one-stop hub that covers A-Z of Data Structures and Algorithms, System Design and CS Core crafted specifically for mastering technical interviews at product-based companies and high-growth startups.
Each problem is thoughtfully categorized, solved in C++, and accompanied by detailed Markdown explanations to help you understand the logic, intuition, and edge cases. Whether you're brushing up on fundamentals or tackling advanced topics β this repo's got you.
π DSA Sources: Striver's A2Z , NeetCode 150 , Blind 75 , Top Interview 150
π System Design Sources: System Design Primer
[ π .md files for explanation | π» .cpp files for code implementation ]
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π 1. Maths | Count the Digits | π MD | β |
| π 1. Maths | Reverse a Number | π MD | β |
| π 1. Maths | Palindrome Number | π MD | β |
| π 1. Maths | GCD | π MD | β |
| π 1. Maths | Armstrong Number | π MD | β |
| π 1. Maths | All Divisors | π MD | β |
| π 1. Maths | Check Prime | π MD | β |
| π 2. Recursion | Print N Names | π MD | π» CPP |
| π 2. Recursion | 1 to N | π MD | π» CPP |
| π 2. Recursion | N to 1 | π MD | π» CPP |
| π 2. Recursion | Sum of N | π MD | π» CPP |
| π 2. Recursion | Factorial of N | π MD | π» CPP |
| π 2. Recursion | Reverse Array | π MD | π» CPP |
| π 2. Recursion | Palindrome String | π MD | π» CPP |
| π 2. Recursion | Fibonacci | π MD | π» CPP |
| π 3. Hashing | Frequency of Array Elements | π MD | π» CPP |
| π 3. Hashing | Highest & Lowest Freq Element | π MD | π» CPP |
| π 3. Hashing | First Unique Character | π MD | π» CPP |
| π 3. Hashing | Find Difference | π MD | π» CPP |
| π 3. Hashing | Find Duplicates | π MD | π» CPP |
| π 3. Hashing | Is Anagram | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π 1. Elementary | Selection Sort | π MD | π» CPP |
| π 1. Elementary | Bubble Sort | π MD | π» CPP |
| π 1. Elementary | Insertion Sort | π MD | π» CPP |
| π 2. Advanced | Merge Sort | π MD | π» CPP |
| π 2. Advanced | Quick Sort | π MD | π» CPP |
| π 2. Advanced | Heap Sort | π MD | π» CPP |
| π 2. Advanced | Radix Sort | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π 1. Easy | Largest Element in the Array | π MD | π» CPP |
| π 1. Easy | Second Largest Element in the Array | π MD | π» CPP |
| π 1. Easy | Is Array Sorted? | π MD | π» CPP |
| π 1. Easy | Remove Duplicates from Array | π MD | π» CPP |
| π 1. Easy | Left Rotate by One | π MD | π» CPP |
| π 1. Easy | Rotate Array by K Places | π MD | π» CPP |
| π 1. Easy | Shift Zeros to End | π MD | π» CPP |
| π 1. Easy | Linear Search | π MD | π» CPP |
| π 1. Easy | Find The Union | π MD | π» CPP |
| π 1. Easy | Find The Intersection | π MD | π» CPP |
| π 1. Easy | Find The Missing Number | π MD | π» CPP |
| π 1. Easy | Max Consecutive Ones | π MD | π» CPP |
| π 1. Easy | Number that Appears Once | π MD | π» CPP |
| π 1. Easy | Longest Subarray with Sum K | π MD | π» CPP |
| π 1. Easy | Remove K From Array | π MD | π» CPP |
| π 1. Easy | One Plus | π MD | π» CPP |
| π 1. Easy | Remove Value From Array | π MD | π» CPP |
| π 1. Easy | Container With Most Water | π MD | π» CPP |
| π 1. Easy | Move Zeros To End | π MD | π» CPP |
| π 2. Medium | Two Sum | π MD | π» CPP |
| π 2. Medium | Sort an Array of 0s, 1s & 2s | π MD | π» CPP |
| π 2. Medium | Majority Element - I [> n/2] | π MD | π» CPP |
| π 2. Medium | Maximum Sub-Array Sum | π MD | π» CPP |
| π 2. Medium | Best Time to Buy and Sell Stock | π MD | π» CPP |
| π 2. Medium | Rearrange Elements by Sign [Alternating] | π MD | π» CPP |
| π 2. Medium | Next Permutation | π MD | π» CPP |
| π 2. Medium | Leaders in an Array | π MD | π» CPP |
| π 2. Medium | Longest Consecutive Sequence | π MD | π» CPP |
| π 2. Medium | Set Matrix Zeros | π MD | π» CPP |
| π 2. Medium | Rotate Matrix By 90 Degrees | π MD | π» CPP |
| π 2. Medium | Matrix Spiral Traversal | π MD | π» CPP |
| π 2. Medium | Sub Arrays With Sum K | π MD | π» CPP |
| π 2. Medium | Partition Labels | π MD | π» CPP |
| π 2. Medium | Sorted Array Squares | π MD | π» CPP |
| π 2. Medium | Boats To Save People | π MD | π» CPP |
| π 2. Medium | Simple Bank System | π MD | π» CPP |
| π 2. Medium | Laser Beams in a Bank | π MD | π» CPP |
| π 2. Medium | Count Ungaurded Cells | π MD | π» CPP |
| π 2. Hard | Pascal's Triangle | π MD | π» CPP |
| π 2. Hard | Majority Element - II [> n/3] | π MD | π» CPP |
| π 2. Hard | Three Sum | π MD | π» CPP |
| π 2. Hard | Four Sum | π MD | π» CPP |
| π 2. Hard | Count Subarrays with Xor K | π MD | π» CPP |
| π 2. Hard | Merge Overlapping Intervals | π MD | π» CPP |
| π 2. Hard | Merge Sorted Arrays | π MD | π» CPP |
| π 2. Hard | Find Repeating and Missing Numbers | π MD | π» CPP |
| π 2. Hard | Count Inversions | π MD | π» CPP |
| π 2. Hard | Reverse Pairs | π MD | π» CPP |
| π 2. Hard | Maximum Product Subarray | π MD | π» CPP |
| π 2. Hard | Product of Array except Self | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| Binary Search on Sorted Array | π MD | π» CPP | |
| Search Insert Position | π MD | π» CPP | |
| First and Last Occurance in a Sorted Array | π MD | π» CPP | |
| Search in a Rotated Sorted Array - I | π MD | π» CPP | |
| Search in a Rotated Sorted Array - II | π MD | π» CPP | |
| Minimum in Rotated Sorted Array | π MD | π» CPP | |
| Single Element in a Sorted Array | π MD | π» CPP | |
| Find Peak Element - I | π MD | π» CPP | |
| Arranging Coins | π MD | π» CPP | |
| First Bad Version | π MD | π» CPP | |
| Koko Eating Bananas | π MD | π» CPP | |
| Days to make M Bouquets | π MD | π» CPP | |
| Smallest Divisor within the Threshold | π MD | π» CPP | |
| Capacity to Ship within D Days | π MD | π» CPP | |
| Find the K-th Missing Element | π MD | π» CPP | |
| Aggressive Cows | π MD | π» CPP | |
| Book Allocation | π MD | π» CPP | |
| Split Array to Largest Sum | π MD | π» CPP | |
| Minimize Max Distance between Gas Stations | π MD | π» CPP | |
| Median of Two Sorted Arrays | π MD | π» CPP | |
| Time Map | π MD | π» CPP | |
| Row with Maximum 1s | π MD | π» CPP | |
| Search in a 2D Matrix - I | π MD | π» CPP | |
| Search in a 2D Matrix - II | π MD | π» CPP | |
| Find Peak Element - II | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π Easy | Remove Outer Parenthesis | π MD | π» CPP |
| π Easy | Largest Odd Number | π MD | π» CPP |
| π Easy | Longest Common Prefix | π MD | π» CPP |
| π Easy | Isomorphic Strings | π MD | π» CPP |
| π Easy | Rotate String | π MD | π» CPP |
| π Easy | Is Anagram ? | π MD | π» CPP |
| π Easy | Valid Palindrome | π MD | π» CPP |
| π Medium | Frequency Sort | π MD | π» CPP |
| π Medium | Max Depth of Parenthesis | π MD | π» CPP |
| π Medium | Roman to Integer | π MD | π» CPP |
| π Medium | String to Integer (ATOI) | π MD | π» CPP |
| π Medium | Longest Palindrome Substrings | π MD | π» CPP |
| π Medium | Sum of Beauty of Substrings | π MD | π» CPP |
| π Medium | Reverse Words in a String | π MD | π» CPP |
| π Medium | Group Anagrams | π MD | π» CPP |
| π Medium | Longest Substring without Repeating Char | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| β‘οΈ Singly LL | Linked List Constructors | π MD | π» CPP |
| β‘οΈ Singly LL | Array to Linked List | π MD | π» CPP |
| β‘οΈ Singly LL | Insertion at Head | π MD | π» CPP |
| β‘οΈ Singly LL | Insertion at Tail | π MD | π» CPP |
| β‘οΈ Singly LL | Insertion at K | π MD | π» CPP |
| β‘οΈ Singly LL | Deletion from Head | π MD | π» CPP |
| β‘οΈ Singly LL | Deletion from Tail | π MD | π» CPP |
| β‘οΈ Singly LL | Deletion from K | π MD | π» CPP |
| β‘οΈ Singly LL | Length of Linked List | π MD | π» CPP |
| β‘οΈ Singly LL | Search K in Linked List | π MD | π» CPP |
| π Doubly LL | Array to DLL | π MD | π» CPP |
| π Doubly LL | Insertion at Head | π MD | π» CPP |
| π Doubly LL | Insertion at Tail | π MD | π» CPP |
| π Doubly LL | Insertion at K | π MD | π» CPP |
| π Doubly LL | Deletion from Head | π MD | π» CPP |
| π Doubly LL | Deletion from Tail | π MD | π» CPP |
| π Doubly LL | Deletion at K | π MD | π» CPP |
| π Doubly LL | Reverse a Doubly LL | π MD | π» CPP |
| π― Medium Singly LL | Find the middle of a LL | π MD | π» CPP |
| π― Medium Singly LL | Reverse a LL (Iterative) | π MD | π» CPP |
| π― Medium Singly LL | Reverse a LL (Recursive) | π MD | π» CPP |
| π― Medium Singly LL | Detect a Cyclic Linked List | π MD | π» CPP |
| π― Medium Singly LL | Find the start of the Loop | π MD | π» CPP |
| π― Medium Singly LL | Find the length of the Loop | π MD | π» CPP |
| π― Medium Singly LL | Palindrome Linked List | π MD | π» CPP |
| π― Medium Singly LL | Odd Even Linked List | π MD | π» CPP |
| π― Medium Singly LL | Delete Nth Node from Back | π MD | π» CPP |
| π― Medium Singly LL | Delete Middle Note | π MD | π» CPP |
| π― Medium Singly LL | Sort Linked List | π MD | π» CPP |
| π― Medium Singly LL | Intersection of Two LLs | π MD | π» CPP |
| π― Medium Singly LL | Add 1 to a number in LL | π MD | π» CPP |
| π― Medium Singly LL | Add two numbers in LL | π MD | π» CPP |
| π― Medium Singly LL | Swap Pairs | π MD | π» CPP |
| π― Medium Singly LL | Merge Inbetween Zeros | π MD | π» CPP |
| π― Medium Singly LL | Delete Nodes present in an Array | π MD | π» CPP |
| π Medium Doubly LL | Delete all occurance of Key | π MD | π» CPP |
| π Medium Doubly LL | Pairs with given Sum in DLL | π MD | π» CPP |
| π Medium Doubly LL | Remove Duplicates from a DLL | π MD | π» CPP |
| π Hard Singly LL | Reverse LL in a Group | π MD | π» CPP |
| π Hard Singly LL | Rotate a LL | π MD | π» CPP |
| π Hard Singly LL | Merge 2 Sorted LLs | π MD | π» CPP |
| π Hard Singly LL | Merge K sorted LLs | π MD | π» CPP |
| π Hard Singly LL | Clone a LL | π MD | π» CPP |
| π Hard Singly LL | Browser History | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π Basics | AOTI | π MD | π» CPP |
| π Basics | Pow (x, n) | π MD | π» CPP |
| π Basics | Good Numbers | π MD | π» CPP |
| π Basics | Sort Stack | π MD | π» CPP |
| π Basics | Reverse Stack | π MD | π» CPP |
| 𫨠Subsquences | Generate Binary Strings | π MD | π» CPP |
| 𫨠Subsquences | Generate Paranthesis | π MD | π» CPP |
| 𫨠Subsquences | Power Set | π MD | π» CPP |
| 𫨠Subsquences | Subsequences with Sum K | π MD | π» CPP |
| 𫨠Subsquences | Subsequences with Sum K - II | π MD | π» CPP |
| 𫨠Subsquences | Combination Sum | π MD | π» CPP |
| 𫨠Subsquences | Combination Sum - II | π MD | π» CPP |
| 𫨠Subsquences | Subsets | π MD | π» CPP |
| 𫨠Subsquences | Subsets - II | π MD | π» CPP |
| 𫨠Subsquences | Combination Sum - III | π MD | π» CPP |
| 𫨠Subsquences | Phone Number Combination | π MD | π» CPP |
| 𫨠Subsquences | Permutations of a String | π MD | π» CPP |
| π€ Hard | Palindrome Partioning | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π Basics | Implement Stack Using Queue | π MD | π» CPP |
| π Basics | Implement Queue Using Stacks | π MD | π» CPP |
| π Basics | Valid Parenthesis | π MD | π» CPP |
| π Basics | Implement Min-Stack | π MD | π» CPP |
| 𧨠Expressions | Infix 2 Postfix | π MD | π» CPP |
| 𧨠Expressions | Infix 2 Prefix | π MD | π» CPP |
| 𧨠Expressions | Postfix 2 Infix | π MD | π» CPP |
| 𧨠Expressions | Prefix 2 Infix | π MD | π» CPP |
| 𧨠Expressions | Postfix 2 Prefix | π MD | π» CPP |
| 𧨠Expressions | Prefix 2 Postfix | π MD | π» CPP |
| π Monotonic DS | Next Greater Element (LC) | π MD | π» CPP |
| π Monotonic DS | Next Greater Element II | π MD | π» CPP |
| π Monotonic DS | Next Smaller Element | π MD | π» CPP |
| π Monotonic DS | NGE to Right | π MD | π» CPP |
| π Monotonic DS | Trapping Rainwater | π MD | π» CPP |
| π Monotonic DS | Sum of Subarray Minimums | π MD | π» CPP |
| π Monotonic DS | Astroid Collisions | π MD | π» CPP |
| π Monotonic DS | Remove K Digits | π MD | π» CPP |
| π Monotonic DS | Largest Rectangle in Histogram | π MD | π» CPP |
| π Monotonic DS | Maximum Rectangle | π MD | π» CPP |
| π Advanced | Sliding Window Maximum | π MD | π» CPP |
| π Advanced | Online Stock Span | π MD | π» CPP |
| π Advanced | The Celebrity Problem | π MD | π» CPP |
| π Advanced | LRU Cache | π MD | π» CPP |
| π Advanced | LFU Cache | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π² Medium | Longest Substring without Repeating Characters | π MD | π» CPP |
| π² Medium | Max Consecutive Ones III | π MD | π» CPP |
| π² Medium | Fruits in a Basket | π MD | π» CPP |
| π² Medium | Longest Repeating Character Replacement | π MD | π» CPP |
| π² Medium | Binary Subarray with Sum K | π MD | π» CPP |
| π² Medium | Subarrays that are Nice | π MD | π» CPP |
| π§° Hard | Substring w/ K Distinct Characters | π MD | π» CPP |
| π§° Hard | Substring w/ K Different Characters | π MD | π» CPP |
| π§° Hard | Minimum Window Substring | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π΄ Basics | About Priority Queues | π MD | - |
| π΄ Basics | Binary Min Heap | π MD | π» CPP |
| π΄ Basics | Binary max Heap | π MD | π» CPP |
| π΄ Basics | Is Array a Min Heap | π MD | π» CPP |
| π΄ Basics | Min Heap 2 Max Heap | π MD | π» CPP |
| π Medium | Kth Largest Element | π MD | π» CPP |
| π Medium | Kth Smallest Element | π MD | π» CPP |
| π Medium | Sort Almost Sorted Array | π MD | π» CPP |
| π Medium | Task Scheduler | π MD | π» CPP |
| π Hard | Design Twitter | π MD | π» CPP |
| π Hard | Connect Sticks | π MD | π» CPP |
| π Hard | Kth Largest in a Stream | π MD | π» CPP |
| π Hard | Max Sum Combination | π MD | π» CPP |
| π Hard | Median in a Data Stream | π MD | π» CPP |
| π Hard | K Frequent Elements | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π€§ Easy | Assign Cookies | π MD | π» CPP |
| π€§ Easy | Fractional Knapsack | π MD | π» CPP |
| π€§ Easy | Minimum Coins | π MD | π» CPP |
| π€§ Easy | Lemonade Changes | π MD | π» CPP |
| π€§ Easy | Valid Parenthesis | π MD | π» CPP |
| π€ Medium | N Meetings | π MD | π» CPP |
| π€ Medium | Jump Game | π MD | π» CPP |
| π€ Medium | Jump Game II | π MD | π» CPP |
| π€ Medium | Minimum Platforms for Trains | π MD | π» CPP |
| π€ Medium | Job Sequencing | π MD | π» CPP |
| π€ Medium | Candy | π MD | π» CPP |
| π€ Medium | Shortest Job First | π MD | π» CPP |
| π€ Medium | LRU Cache | π MD | π» CPP |
| π€ Medium | Insert Intervals | π MD | π» CPP |
| π€ Medium | Largest Number | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π³ Traversals | Introductions | π MD | - |
| π³ Traversals | Binary Trees in C++ | π MD | - |
| π³ Traversals | Preorder - Recursive | π MD | π» CPP |
| π³ Traversals | Inorder - Recursive | π MD | π» CPP |
| π³ Traversals | Postorder - Recursive | π MD | π» CPP |
| π³ Traversals | Level Order | π MD | π» CPP |
| π³ Traversals | Preorder - Iterative | π MD | π» CPP |
| π³ Traversals | Inorder - Iterative | π MD | π» CPP |
| π³ Traversals | Postorder - Iterative | π MD | π» CPP |
| π³ Traversals | Level Order - Bottom First | π MD | π» CPP |
| π² Medium | Max Depth of BT | π MD | π» CPP |
| π² Medium | Is BT Balanced? | π MD | π» CPP |
| π² Medium | Diameter of BT | π MD | π» CPP |
| π² Medium | Max Sum of Path | π MD | π» CPP |
| π² Medium | Is it the Same Tree? | π MD | π» CPP |
| π² Medium | Zig zag Traversal | π MD | π» CPP |
| π² Medium | BT Boundary Traversal | π MD | π» CPP |
| π² Medium | Vertical Traversal in BT | π MD | π» CPP |
| π² Medium | Top View in BT | π MD | π» CPP |
| π² Medium | Bottom View in BT | π MD | π» CPP |
| π² Medium | Right Side View of BT | π MD | π» CPP |
| π² Medium | Left Side View of BT | π MD | π» CPP |
| π² Medium | Symmetric BT | π MD | π» CPP |
| π² Medium | Invert Binary Tree | π MD | π» CPP |
| π² Medium | Minimum Depth of BT | π MD | π» CPP |
| π Hard | Root to Node Path | π MD | π» CPP |
| π Hard | Lowerst Common Ancestor | π MD | π» CPP |
| π Hard | Maximum Width of BT | π MD | π» CPP |
| π Hard | Children Sum Property I | π MD | π» CPP |
| π Hard | Children Sum Property II | π MD | π» CPP |
| π Hard | All Nodes at a distance K | π MD | π» CPP |
| π Hard | Minimum Time to Burn Tree | π MD | π» CPP |
| π Hard | Count Total Nodes | π MD | π» CPP |
| π Hard | Construct BT from Inorder | π MD | π» CPP |
| π Hard | Contruct BT from Postorder | π MD | π» CPP |
| π Hard | Serialize and Deserialize | π MD | π» CPP |
| π Hard | Morris Inorder Traversal | π MD | π» CPP |
| π Hard | Flatten Binary Tree | π MD | π» CPP |
| Category | Problem / Algorithm | Explanation | Code |
|---|---|---|---|
| π² Concepts | Introduction | π MD | π» CPP |
| π² Concepts | Search in BST | π MD | π» CPP |
| π² Concepts | Find Min / Max | π MD | π» CPP |
| πΌ Medium | - | π MD | π» CPP |
I know this might seem like a lot, but success only comes to those who persist, and don't give up. Anyway, as you progress through the foundations, the later parts become easier.
| Topic | Resourse | Links | Notes |
|---|---|---|---|
| HTML | Youtube - Dave Gray | YT | Do this first, learn about semantics and tags and why they are important. |
| CSS | Youtube - Dave Gray | YT | Get basic understanding of CSS classes, and practices with simple projects. |
| HTML & CSS | Youtube - SuperSimpleDev | YT | Love Simon's content, super simple, and easy to understand. |
| Javascript | Hitest Choudhary | YT | This is an old series by Hitesh sir, all in english, and pretty solid. |
| Javascript | Hitest Choudhary | YT | This series is in Hindi, more modern and simple. |
| Javascript | SuperSimpleDev | YT | Simon again, he is also really great, industry standard but simple. |
| Javascript | Dave Gray | YT | Dave is also great, but I prefered the other three above in JS. |
| Javascript | arindal1 | repo | Elaborate notes on Javascript with code and examples. |
| Javascript | arindal1 | repo | A 30 Day Javascript challenge, to make your foundations solid. |
| Git | Brendan Dickinson | YT | Short and sweet intro to Git. |
| Git | Nick White | YT | Simple and straight, a more casual and easy explanation. |
| Git | Hitesh Choudhary | YT | If you want to go in depth, with inner mechanisms and industry level standards. |
| NPM | Traversy Media | YT | Course to package managers for Development. |
| TailwindCSS | JavascriptMastery | YT | Great explanations, and hands on parctice. |
| TailwindCSS | Dave Gray | YT | Dave is really good with CSS, smh. |
| ReactJS | Hitesh Choudhary | YT - repo | Pure beginner friendly course for React. Hitesh sir is super particular about industry standards. |
| ReactJS | Hitesh Choudhary | YT | This series is in Hindi, equivalent to the course above. |
| ReactJS | SuperSimpleDev | YT | Simon is always straightforward, and tries his best to keep things simple but good quality. |
| ReactJS | JavascriptMastery | YT | Once you have understood basics of React, watch this. |
| Linters and Formatters | CoderDave | YT | Linters are fairly easy, just watch this and gain a basic understanding. |
| Module Bundler | Fireship | YT | You will already know about module bundlers while learning React, if not, this is for you. I find fireship really interesting. |
| Vite | CodeSTACKr | YT | A vite crash course to know indepth mechanisms of Vite. (optional) |
| Testing | dotconferences | YT | Testing is an essential but advanced part of development. This video tells you all about testing in industry. |
| Jest | FreeCodeCamp | YT | Jest is a Javascript testing tech. |
| Authentication | Hayk Simonyan | YT | Hayk Simonyan |
| Web API | Keep on Coding | YT | Basics of Web API. |
| Types of APIs | Codist | YT | Different types of APIs used in the industry, and why? |
| Rest API | IBM Tech | YT | A little about Restful APIs |
| Web Security | Arkenstone Learning | YT | This a playlist that focuses on WebSecurity through ZAP, not super important, but do learn the theory. |
| SSR | Microsoft Developer | YT | What is Server Side Rendering? |
| SSR | Smoljames | YT | Server Side Rendering vs Client Side Rendering |
| NextJs | FreeCodeCamp | YT | Well, if you have got your hands on React, and want to dive into SSR. Well, NextJS is the best. And... it's taught by the Head of Developer Community at Vercel! |
| SSG | Net Ninja | YT | Static Site Generators (SSGs) build websites as pre-generated HTML files from content and templates. Make sites fast, secure, and easy to host. (kinda optional) |
| Design System | Figma | YT | Well designing your site is also important. |
| Deployments | - Multiple - | Netlify - Github - Vercel - Render - | How to deploy your code in the Internet. |
| Web Performance | Dmitriy Zhiganov | YT | How to enhance the performance of your site. Design Systems. |
| Lighthouse | WPDev | YT | Lighthouse is an open-source, automated tool for improving the quality of web pages. |
| Dev Tools | Tobi Mey | YT | DevTools are a set of web developer tools built directly into web browsers. |
| Service Workers | Udacity | YT | Service Workers are JavaScript files that act as proxy servers between web browsers and web servers. |
| Accessibility | Chrome | YT | Understanding Accessibility and it's importance for websites. |
that should be all for Frontend development. Rest is upto practice and projects.
- Java memory model (Heap v Stack)
- OOP Principles
- SOLID Principles
- Generics, Lamda, Streams
- Exception Handling
- Immutibility & Best Practices
- JVM Internals
- FAANG Level prep
- Clean Code
- Edge-case handling
- TIME + Space Complexity
- Thread lifecycle
- Synchronization v Locks
- Deadlocks, Starvation
- ExecutorService
- Completable Future
- Concurrent Collections
- Spring Core & Dependency Injection
- Spring Boot auto-config
- RestAPI design
- Validation & Execution Handling
- Spring Security (JWT + Role Based)
- Logging & Monitoring
- Unit + Integration testing
-
SQL:
- Indexing & query optimizations
- Joins & Subqueries
- ACID v BASE
-
NoSQL:
- MongoDB schema design
- when to use SQL & noSQL
- Redis Caching
Below π½π½
| Topic | Resource | Links | Notes |
|---|---|---|---|
| Introduction | Crio.do | article | Basic intro to System Design and Engineering. |
| Guide | Swimm | article | Basic intro to System Design and patterns. |
| The Primer | donnemartin | repo | The System Design Primer. It's the Holy Grail for SDEs, trust me. |
| SD Template | Top Cat | leetcode | A template for how to approach designing an efficient System. |
| SD Questions | HiredInTech | article | In this course you will see what such system design interview questions look like and what is expected from you in order to solve them. |
| SD Interviews | Jackson Gabbard | YT | Walk through the context and goals of a systems design and architecture interview. |
[ IN PROGRESS ]
- LinkedIn - arindalchar
- Twitter - arindal_17
