15 ms·
After the initial denial phase, I took it as a challenge and that mindset has helped me. I tried a variety of tools including anki to my own homegrown leitner s
by gofreddygo 7y ago
After the initial denial phase, I took it as a challenge and that mindset has helped me. I tried a variety of tools including anki to my own homegrown leitner system. They all suck for this. Don't waste your time.
The key to slaying this dragon is repetition. If you identify repeating patterns and just fucking practice them and own them, you make a lot of progress. Just like you learn to draw. One mistake I made initially was to follow common advice and 'just solve leetcode'. No it does not work (for me). Don't waste your time. First own the basics.
Its similar to the mental models approach that Charlie Munger advertises, just limited to this domain. A few common patterns solve a lot of common problems. e.g.
* using hashmap to find a pair/triplet that match a criteria in an array of numbers
* kadane's algorithm - to find contiguous subarray
* dfs - for "find all combinations" type of problems
* coin change / knapsack - solves a lot of problems in DP space
* implementing merge sort/timsort/heapsort
* implementing quick sort
* a classic problem involving a trie implementation
* two pointer approach to navigating arrays
These cover a large swath of interview questions (programming + whiteboard)
Once you add in your vast real world experience, you really have a strong edge over other candidates in further rounds. Especially in a hiring manager's perspective.
definitely get the book Elements of Programming Interviews (I printed it out and read it chapter wise as time permits. Sometimes while cooking). I focus on array, string type questions
And finally, another thing I realized is ... to get what really want, you must be ready to lose it. Fear of rejection is real, creepy and my biggest deterrent. I've since told myself - I want that job at google. I will try all I can. I am not afraid to lose.
Fuck it man, just do it.