| "Do most senior software engineers take time to build a mental model before coding and testing?" I don't know. It probably depends on the problem. If I've written anything remotely similar before, I probably come in with a history with the problem at hand and can at least guess what sort of solution might work. If I've never written anything remotely similar I just need to sketch a lot to a paper, and try out things in code before I implement anything. I don't know what the interview was actually like. But no one has been able to verbalize exactly the specific behaviour of a good programmer. The best gauge of good programmer is that they identify each other. Now, this key factor also has a hidden catch. People are different! Nobody has identified that there is only one true way of being a top performer. So, when you are interviewing, the interviewer has a specific model in her head ... of what a top performer is like to her. But as far as I know, no one has done any research how many "top performer archetypes" there are. So, I would say it's intellectually faulty to say there is only one way of being a senior contributor. Senior contributors output is gauged in production. On the other hand, the only way to find top performers is to ask for other top performers to find them. And they are not necessarily expert psychologists, they just know how they work, and maybe have some notion of what the organization supports. The interviewer might have had some archetype in their head that you did not fit with, but could not exactly verbalize, so they tried to generate anything resembling a reasonable rationalization for their intuition. So the actual problem might not have been your "lack of mental model", but some other unspecified lack of affinity with the specific way of working the interviewer expected (reasonably or not). So there might be ways to be awesome that are unfamiliar to the interviewer, that they just don't understand. On the other hand, they've likely seen what works in their organization and what does not, and that feeds into their intuition as well. So the best way to ace an interview at an organization, is to psychologically match with the other top performers in the organization. And the best way to suck at an interview is to be technically incompetent for the seat they are hiring - in this case no psychological affinity is going to help in the short term. But how to think, or how exactly to solve problems... that's a stretch to say there is only one way to do it. It sounds to me at worst it will lead to groupthink and lack of innovation opportunities due to cognitive monoculture. Sorry, I don't actually know how to pass a FAANG interview or what you need for it. |