stop memorizing questions.
learn the patterns.
there are only so many ideas in this game. 75of them, tiered — and most people grind hundreds of problems without ever naming one. this is the syllabus instead: articles teach each pattern, problems drill it, and the ones you're weak at come back on a schedule.
know where to stop.
every pattern sits in a tier. the tier tells you how well you need to know it — and when to walk away. past stretch is competitive-programming territory, and you can safely ignore it.
know cold. implement from memory, instant recognition. non-negotiable.
recognize the trigger, implement with light effort.
know they exist and roughly when they apply. don't grind these.
how it works
read the pattern
each structure and technique gets an article that teaches the idea and the trigger — what makes a problem this pattern.
drill it
problems are tagged by pattern, not by company. you run them in the browser against real tests, python or javascript.
the weak ones come back
you grade yourself after each attempt. spaced repetition resurfaces exactly the patterns you're shaky on, and leaves the solid ones alone.