The tree round on my first onsite was Root to Leaf Paths. Enumerate every root-to-leaf path in a binary tree. Looked easy. The recursion took about four minutes to write. Running it on the sample input came back with a list where every path ended at ...
Three months of practicing binary search trees on paper. Search procedure memorised. Insertion procedure memorised. Three deletion cases memorised. Then came the onsite. The interviewer drew a tree on the whiteboard, asked for an insertion walkthroug...
The Big O table was memorised before the first onsite. Binary search logarithmic, merge sort linearithmic, hash insert constant amortised. All recitable. Then a senior engineer wrote a recursive function on the whiteboard, asked for an analysis, and ...
For a long time I treated BFS and DFS as interchangeable. Two ways to visit every node, pick whichever came to mind first. Then an interview handed me a grid that wanted the minimum number of steps, and a recursive DFS felt faster to type, so that's ...
For a long stretch, backtracking was the topic I quietly dreaded. The recursion was easy enough to write. The code ran. It even returned answers. They were just wrong, and not in a way that threw an error you could chase. A Combination Sum solution w...
The first time an interviewer asked me to walk through an LR rotation on a whiteboard, the four-case table was memorised cold. LL, RR, LR, RL. The interviewer drew three nodes, asked which case it was, and the answer came out fast. Then they asked: "...
After treating every FAANG company like the same interview, Amazon exposed the gap in about twenty minutes.
I'd built FAANG prep around a small set of pattern families that looked highest-frequency: predicate search, sliding window, hash table funda...
I thought solving the problem was the round. The last ten minutes turned out to be the part that counted.
I'd put close to four months into Amazon prep by the time my onsite landed. Two coding rounds went fine. The third started fine too.
I solved ...
It took an LRU Cache interview for me to realise the complexity table wasn't answering the real question.
I'd been picking between arrays and linked lists for years before realising the table wasn't the answer to the question.
Then LRU Cache came ...
After 280 LeetCode problems, I realised “feeling ready” wasn’t a metric. A diagnostic was.
I'd solved around 280 problems by the time the FAANG readiness question got serious, and the answer changed every week. Some weeks felt close after a clean ba...
I'd solved around 300 problems by the time my third senior screen wrapped up. The medium that had just bombed the call was something I could explain back to myself in 90 seconds once it ended. The constraints were familiar. The technique was one anyo...
I'd written the BFS in about eight minutes. The interviewer ran the example I'd traced and said "ok, but how do you know this is right for any input?" My instinct was to point at the code. Pointing wasn't an argument. The silence stretched, and the r...
A few years back I had AlgoExpert open in one tab and a NeetCode playlist queued in another, and the prep felt like it was working. Twelve weeks of disciplined viewing, two videos most evenings, the trees module rewatched twice because the postorder ...
I failed my 12 week FAANG prep plan because I skipped recursion — and it broke everything after it.
What I figured out, in retrospect
The order topics appear in a 90 day plan isn't cosmetic. It's load-bearing in a way you only notice when you viola...
A few years ago I solved 200 LeetCode problems and still froze on Mediums I hadn't seen. The breakthrough wasn't another hundred problems. It was a different loop.
A problem asks for the longest substring with at most K distinct characters. You've s...