A recruiter called me 90 minutes after my final round. She'd already talked to the CTO. What he said had nothing to do with my code.
Most of the time you never find out what actually happened after you leave the call. You get the email or you don't.
This one was different. She called me an hour and a half after my final round, and she'd already talked to the CTO. She told me what went well, where I lost them, and what he actually said.
He didn't say my code was bad. He didn't say I got a question wrong. He said: "I'm not sure he gets where we're heading."
(And I'm sitting there thinking, come on. Why is everyone this picky right now? The market is out of control. Let me actually work there and I'll figure out where we're heading. Of course I don't know yet. I haven't worked a single day at your company!)
It's not about the code. It's about whether I understood what they're trying to build. And nobody gets you ready for that part.
Now think about how you actually prepare. You grind the code. You sharpen your skills. You build demo apps that look roughly like the thing you'd be doing on the job. You figure you've covered it. And no, not even close. They can just ask where you see yourself in five years, they don't like the answer, and that's it. Doesn't matter what code you write. Doesn't matter what you built. Doesn't matter how many points you scored. You're out.
Once I saw it, I saw it everywhere. Three out of four finals I had inside one month came down to the same thing.
The one thing I do differently now is I ask what they said. At the end of every interview I ask the recruiter to come back and tell me the feedback. About half of them do, and I've learned more from those than from the interviews.
Has this happened to you? You prep for weeks, and then they ask something you weren't ready for, or they nitpick something you can't even see, or your shirt is the wrong color. Anything like that?