Prep
1 questions · 1 experiences · Other (2)
Reddit
Question
·
May 2025
·
Los Angeles
My LC Prep - Google Offer SWE II (L3)
330 upvotes
105 replies
Question Details
My Technical-Interview Prep Journey (Google Offer) Hey everyone! A little while ago I shared my Google interview experience. In this post I’ll explain, step by step, how I prepared for the technical rounds. --- ## LeetCode Snapshot (at offer time) | | Count | |--------------------|-------| | Total solved | 725 | | Hard | 80 | | Medium | 560 | | Easy | 85 | | Acceptance rate| 65 % | | Contests | None (unrated) | When I began focused prep (~6 months out) I could solve ~40-50 % of medium problems unaided. My weak areas were: * Advanced dynamic programming (DP) * Monotonic stacks / queues * Prefix-sum techniques --- ## Months 1 – 2 — Dynamic Programming Boot Camp * Bought a DP-specific book (honestly, didn’t help much). * Completed the Grokking Dynamic Programming course. * Studied every DP solution from NeetCode. Key take-aways * ~80 % of interview-style DP problems yield to “recursive + memoization”. * Converting that to tabulation is mostly mechanical once you see the recursion. * Interviewers rarely demand the fully space-optimized version. After two months of DP-only practice I could solve 85-90 % of medium DP problems in one pass (hard DP ~50-60 %). --- ## Months 3 – 4 — Prefix Sums & Monotonic Data Structures * Two-week sprint on all medium prefix-sum / prefix-product problems. Result: solid mastery. * Six-week deep dive into monotonic stacks & queues. Result: better, but still inconsistent—~50-60 % success on mediums, ~10 % on hards. Given the rarity of these problems, I switched back to broader prep rather than chasing diminishing returns. --- ## Months 5 – 6 — Full-scale Mock Interview Mode * Ran through NeetCode lists in this order: 150 → 250 → “all”, using random shuffle. Skipped low-yield topics (e.g. bit-trick puzzles). * For every problem I rated myself 0-4. * Created a flashcard in RemNote with the problem link. * Applied spaced-repetition: harder / poorly-solved problems resurfaced sooner. ### Daily workload * Averaged ≈ 8 problems per day (except during the monotonic-stack month). * Read Steven Skiena’s The Algorithm Design Manual concurrently—excellent complement. --- ## Resources I’d (and wouldn’t) Recommend | 👍 Worth It | 👎 Skip / Outdated | |-------------|-------------------| | NeetCode (videos + problem lists) | Cracking the Coding Interview, decent history piece, but scope and difficulty are dated. | | The Algorithm Design Manual (Skiena) | Most “topic-only” DP books (learn by doing instead). | | Grokking DP course (fast intro) | — | --- ## Personal Reflections * I was over-prepared; you likely need less to pass. * For me the hardest step wasn’t the interviews, it was getting shortlisted. * Expect the occasional “museum piece” question (e.g. Manacher’s, Treaps). If you blank on an obscure algorithm, that’s on the interviewer, not you. * Google’s difficulty is fairly uniform worldwide; location ≠ harsher bar. * The process is long and stressful, sleep and mental breaks matter. Feel free to ask anything in the comments. Happy grinding! 😄 Disclaimer: I wrote this post myself and then used ChatGPT to polish the grammar and formatting, so please don’t hate on me for the assist! 🙂
Free preview. Unlock all questions →
Topics
Dynamic Programming
Recursion
Stack Queue