Skip to content

Microsoft - 3 Month Prep Roadmap

For candidates building from scratch or aiming for a thorough preparation. ~2-3 hours/day | 5-6 days/week | Target: 200+ LC problems

Microsoft interview flow: OA -> 3 Tech Rounds (DSA + LLD + HLD) -> AA (Behavioral) Round


Month 1: DSA Foundations

Weeks 1-2: Core Data Structures & Patterns

Week Focus Problems (20/week) Course
1 Arrays, Two Pointers, Sliding Window Two Sum (8x), 3Sum (8x), Container With Most Water (8x), Trapping Rain Water (7x), Product of Array Except Self (5x), Maximum Subarray (5x), Sort Colors (5x), Subarray Sum Equals K (4x), Sliding Window Maximum (4x), Longest Repeating Character Replacement (2x) Mono Stack
2 HashMap, Stack, Queue, Binary Search LRU Cache (15x), Valid Parentheses (10x), Group Anagrams (8x), Search in Rotated Sorted Array (11x), Generate Parentheses (6x), Basic Calculator II (4x), Largest Rectangle in Histogram (4x), Min Stack (4x), Find First and Last Position (4x), Median of Two Sorted Arrays (5x) Binary Search

Weeks 3-4: Trees (Microsoft's #1 Topic)

Week Focus Problems (20/week) Course
3 Tree BFS/DFS, BST Lowest Common Ancestor (8x), Binary Tree Zigzag Level Order Traversal (8x), Construct Binary Tree from Preorder and Inorder (8x), Validate BST (6x), Binary Tree Level Order Traversal (6x), Binary Tree Maximum Path Sum (5x), Serialize and Deserialize Binary Tree (5x), Kth Smallest Element in BST (5x), Diameter of Binary Tree (5x), Implement Trie (4x), Binary Tree Cameras (4x), Count Good Nodes (4x), Binary Tree Right Side View (4x) Tree Course Ch 1-4
4 Graphs: BFS, DFS, Topo Sort, Union Find Number of Islands (14x), Course Schedule II (11x), Course Schedule (7x), Rotting Oranges (7x), Word Ladder (7x), Redundant Connection (7x), Critical Connections (6x), Network Delay Time (5x), Cheapest Flights Within K Stops (5x), Pacific Atlantic Water Flow (5x), Alien Dictionary (4x), Bus Routes (4x), Max Area of Island (4x) Graph Course

Month 1 target: ~80 problems solved, Tree and Graph fundamentals mastered


Month 2: DP, Advanced Topics + LLD Start

Weeks 5-6: DP & Intervals & Linked Lists

Week Focus Problems (15/week) Course
5 Dynamic Programming Jump Game (7x), Decode Ways (6x), Jump Game II (5x), Word Break (5x), Climbing Stairs (5x), Longest Increasing Subsequence (4x), Coin Change (4x), Maximum Profit in Job Scheduling (3x), Longest Increasing Path in Matrix (2x), House Robber III (2x), Unique Paths (2x), Minimum Path Sum (2x) DP Course
6 Intervals, Linked List, Heap, String Meeting Rooms II (12x), Merge Intervals (7x), Reverse Linked List (7x), Merge k Sorted Lists (7x), Add Two Numbers (6x), Reverse Nodes in k-Group (6x), Copy List with Random Pointer (5x), Reorganize String (5x), Kth Largest Element (5x), Task Scheduler (4x), Reverse Words in a String (8x), Spiral Matrix (7x) Greedy Course -> Intervals

Weeks 7-8: LLD Fundamentals + Practice

Week Focus Practice Problems
7 OOP, SOLID, Design Patterns Study: Strategy, Factory, Observer, State, Composite, Command, Memento. Implement each pattern from scratch. Focus on pseudocode quality.
8 LLD Practice (Microsoft favorites) Parking Lot (6x), Cache with Pluggable Eviction (3x), Notification System (4x). Write class diagrams + pseudocode. Emphasize SOLID principles.

Course: LLD Course Ch 1-10

Month 2 target: ~150 problems solved, LLD patterns internalized


Month 3: System Design + Advanced LLD + Mocks

Weeks 9-10: Advanced LLD + HLD Start

Week Focus Practice Problems
9 More LLD problems Rate Limiter (3x): Token bucket, sliding window, Strategy pattern. Board Games (3x): Ludo, Chess, Snake & Ladder -- State + Command patterns. Undo/Redo (1x): Command + Memento patterns. Feature Flag (1x): Strategy + Observer.
10 HLD deep dives URL Shortener (5x): Hashing, caching, sharding, multi-region. Notification System (5x): Fan-out, Kafka, push notifications. Chat Application (4x): WebSocket, presence, delivery receipts. Monitoring System (4x): Time-series DB, alerting rules.

Course: LLD Course + System Design

Weeks 11-12: System Design + Behavioral + Mocks

Week Focus Details
11 System Design deep dive + AA prep Cache/KV Store (4x), Autocomplete (3x), File Upload/Download (3x), Rate Limiter (2x), Distributed Logging (2x). Begin AA round prep: write 5 STAR stories.
12 Mocks + Behavioral 2 full DSA mocks (2 problems each, 45 min), 2 LLD mocks (pseudocode + class diagrams, 60 min), 2 HLD mocks (requirements -> architecture -> deep dive, 60 min). Polish AA round stories.

Final Stats

Category Target
LC problems solved 200+
LLD problems practiced 10-12
HLD problems practiced 8-10
Mock interviews completed 6+
AA (behavioral) stories 5

Topic Distribution (matches Microsoft interview frequency)

Tree problems:       ~40  (Microsoft's #1 topic -- 154 posts)
Graph problems:      ~30  (Microsoft's #2 topic -- 130 posts)
DP problems:         ~25  (Microsoft's #3 topic -- 150 posts)
Array/Two Pointers:  ~25
Stack/Queue:         ~15
Intervals:           ~12
Linked List:         ~12
HashMap/Design:      ~12
Binary Search:       ~10
Heap/PQ:             ~10
Sliding Window:      ~8
String:              ~8
Matrix/Grid:         ~8
Backtracking:        ~8
                    ----
Total:              ~223

AA (As Appropriate) Round Prep

The AA round is Microsoft's behavioral round. It evaluates culture fit and growth mindset. Prepare stories around these themes:

Theme Sample Question
Growth Mindset Tell me about a time you received critical feedback and how you acted on it.
Collaboration Describe a time you had to work with someone with a very different working style.
Customer Impact Tell me about a project where you significantly improved the user experience.
Handling Ambiguity Describe a time you had to make a decision with incomplete information.
Conflict Resolution Tell me about a disagreement with a teammate and how you resolved it.
Ownership Tell me about a time you went above and beyond your role to deliver a result.

Tips: Use STAR format (Situation, Task, Action, Result). Be specific with numbers and impact. Microsoft values humility, curiosity, and collaboration over individual heroics.


Key Microsoft-Specific Tips

  1. Trees are non-negotiable -- 154 problems tagged, most of any topic. LCA, zigzag level order, BST validation, construction from traversals. Practice until these are automatic.
  2. LRU Cache is the single most asked problem -- 15 mentions. DLL + HashMap. You must be able to implement this flawlessly.
  3. Mediums dominate -- ~50% of problems are Medium difficulty. Don't spend weeks grinding Hards. Master Mediums first.
  4. LLD = pseudocode + SOLID -- Unlike Uber/Google which may want runnable code, Microsoft cares about design quality. Name your patterns. Show extensibility.
  5. AA round is make-or-break -- A bad AA round can veto a strong technical performance. Don't skimp on behavioral prep.
  6. Communication matters -- Think out loud. Microsoft interviews are collaborative. Interviewers often give hints if you're on the right track.
  7. No need for perfect solutions -- Start brute force, optimize incrementally, discuss trade-offs. The journey matters as much as the destination.
  8. Graph depth -- Microsoft asks graph problems across BFS, DFS, topological sort, Union Find, Dijkstra, and Tarjan's (bridges). Cover all subtypes.
  9. Practice time management -- In actual interviews, you'll have ~40-45 min for 1-2 DSA problems. Simulate this in practice.
  10. Don't over-prepare -- 3 months is the sweet spot. Revision matters more than volume. Review solved problems weekly.