Six months into my startup and it wasn't profitable. I could see where things were heading, so instead of waiting to get caught off guard, I gave myself 30 days to land something new. I hadn't interviewed in 4 years. Here's what happened.
Senior-level interviews have shifted. The coding rounds are easier now — easy to medium difficulty, because companies know candidates have access to GenAI tools and the hard algorithmic rounds don't differentiate anymore. What matters at the senior level is mostly theoretical knowledge and behavioral questions. Can you explain system design tradeoffs? Do you actually understand the technologies on your resume, or did you just use them?
So I made a deliberate choice: skip the LeetCode grind entirely. Instead, I focused all my prep time on system design and theoretical knowledge — the stuff that actually comes up in senior interviews and that you can't fake with an AI copilot.
I started by using Claude Code with a set of markdown files — questions organized by topic, with my answers and self-grading. It technically worked, but the overhead was brutal. Loading context, managing files, dealing with token limits. A 20-minute review session had 10 minutes of friction before I even started reviewing.
So I built GrindQuestionsAI — a card-based review tool with spaced repetition and AI grading. Type your answer, get scored on depth and accuracy, get follow-up questions on the parts you got wrong. The key was speed: flip through cards fast, get honest feedback, and let the scheduling algorithm decide what to review next based on what I actually knew versus what I thought I knew.
It cut my review sessions from 30 minutes of setup + review down to pure review time. That mattered when I only had 30 days.
I sent out 17 CVs. 7 came back rejected — positions closed before they got to my application. The remaining 10 all turned into interviews, and I passed most of them. Not a bad conversion rate for a cold job search.
I failed two interviews: a Senior Java role and a Senior Go role. Both were purely technical — no behavioral, no system design, just deep language-specific questions.
The Go one stung. I hadn't written Go in about a year, and the interviewer went deep on Go-specific internals — goroutine scheduling, channel semantics, things you forget if you're not writing Go daily. I knew the concepts broadly but couldn't speak to Go's specific implementation details with the precision they wanted.
To be fair, I applied to both of these as live practice. I hadn't interviewed in 4 years and needed to shake the rust off with real conversations before the interviews I actually cared about. They served their purpose — I walked into my later interviews sharper and calmer.
Two offers, both above my current salary — which was already high. Now I'm choosing between a Senior Python role focused on AI integrations and a Senior Full-Stack position with Python on the backend. Both are the kind of work I want to be doing.
The takeaway: if you're a senior engineer with limited prep time, don't waste it on LeetCode. Focus on being able to explain what you know — system design, architectural tradeoffs, the "why" behind your technology choices. That's what senior interviews actually test, and that's what AI interview coaching with spaced repetition is built for.
Read more about why I built this tool and how technical knowledge matters more than ever in the AI era. Or try the free assessment yourself.