Interview preparation often means different things to technologists depending on their level of experience. It seems that more and more material written about interview prep seems focused on junior level developer interviews at the most visible employers, causing worried job seekers to spend hours memorizing algorithms and data structures or the code to the most commonly asked problems to solve.
After someone gains a few years of programming experience, their interviews tend to focus less on technical memorization and more on professional accomplishments and to some degree on self-awareness. Being prepared for a potentially deep technical conversation still is important, but studying for an interview should also include a healthy dose of reflection and the preparation for anecdotal questions.
Here are some questions you might expect to see:
What professional accomplishment are you most proud of, and why? Some may take this opportunity to brag while others might stress the value of their team during the efforts.
What are the biggest challenges you face in your current position? Be careful to sidestep being perceived as overtly negative about your employer.
How does your work (or $PROJECT) impact the business? Several hiring managers have privately expressed to me that their biggest pet peeve was when developers had little understanding of their relationship to the big picture.
Tell us about a professional disagreement you had with a difficult boss/co-worker and how the situation was resolved. This one is also tricky, and some humility goes a long way.
Tell us about a mistake that you made that had an effect on your team or product, what caused the problem, and how it was fixed. Everybody messes up, and the ability to both accept fault and learn from mistakes is a valuable trait.
There can be many examples of questions that require reflection. One useful exercise is to review your resume before an interview to refresh your memory of various projects, and consider both the positive and negative experiences for each. Having to improvise stories can be a difficult task in front of an audience, so practicing answers may be helpful.