I have a list of technical questions I tend to stumble over. Things like SSL pinning, cache management, CI/CD, github stuff, and DI. Often things that colleagues have set up 3 years ago and are now just a function call on Slack.
Every interview will ask the same questions: "Tell me something about yourself. Why would you leave such an awesome job? Are you willing to take a pay cut for equity? Why do we need you instead of paying a junior and giving them AI? How do you practice Agile in your workplace? How would you train a junior? How much are you being paid now? How do you feel about trans people and dogs?"
Some of these are traps. The only wrong answer is sounding defensive or evasive. So it's important to practice taking these head on.
I find that if you nail the first interview with the decision maker(s), you will get the job. You can fail the interview but they'll even give you another one because they see it as some kind of error. If you excel at the technical interview and don't pass the vibe check, they'll find a reason to reject you. Then they'll pick at the number of past jobs you held (too many or too few), resume gaps, 'culture fit', etc. And if they absolutely find nothing to reject you for, you'll get rejected for being overqualified.
Also it's important to interview for the role you're applying for, not the one you hold. For me, it's a shift – founding engineer/staff+/TL/EM/CTO at this point. The IC roles aren't being evaluated from an IC angle. They're being evaluated from an angle of whether I can lead product next year once the company has raised $100m.
They don't know anything about you. They don't know that I used to spend my teenage years as a kind of PM making games with strangers over the internet. The unwritten question I have to answer by the end of the interviews is, "Can this engineering degree nerd from a developing Muslim majority country lead a team of white people who went to MIT?"