This is the 9th chapter of our The Complete Guide to Google Interview Preparation series.
How to prepare non-technical questions in a coding interview is one of the most common questions I’ve received. Most people have no idea how to prepare for it or they even don’t know what type of questions will be asked.
Generally speaking, non-technical questions only account for a small part of the interview. However, it can “kill” you if interviewers catch any red flags. One example is the culture fit. The trend is that companies are paying more attentions to culture fit, which is true for both big companies like Google, Airbnb, and startups.
In this chapter, I’ll cover everything non-technical, including self-introduction, culture fit, ask questions to interviewers, etc.. These are not only tips that can help you be better prepared, but also a good practice to let you be aware if you are a good fit.
What Are Interviewers Looking For?
If a coding interview is used to evaluate a candidate’s technical skills, what are interviewers looking for by asking non-technical questions? I would summarize to the following three aspects.
In the end, we are all working with people. No matter how strong the candidate is, interviewers usually ask a simple question to themselves – do I want to work with this guy? This is a very subjective question for sure, but by talking and discussing with the candidate, interviewers can get some ideas.
For instance, sometimes I found the candidate very passionate about the company and the product, which may potentially affect the “score”.
I’ll talk about this later in this chapter. But in short, every company has its own culture and it’s important to evaluate if the candidate is a good fit. Every culture has its pros and cons, therefore it’s all about matching (just like dating).
Plus points & Red flags
Coding questions can never cover every aspect of a person. By discussing things like past experience, areas that candidates are interested in, interviewers are actually looking for any plus points or red flags.
For example, if your past experience is highly relevant, it’s definitely an advantage. For new grads, having interned in a top company can potentially leave interviewers a positive impression. On the flip side, If you’ve spent only three months in your previous company, interviewers may ask you more about it.
“Introduce yourself” might be the only question that will be asked for sure and there’s no reason you shouldn’t prepare for it. There’s no clear cut between good and bad introductions, but having some preparation in advance can certainly do you good. In fact, it won’t take you much time.
The golden rule is to be clear and concise. First, list few points (less than 3) that you really want to highlight in your introduction. It can be one of your past projects, or you have won some programming competitions. Second, compress all of them within 1-2 minutes.
You don’t need to cover as many details as possible. If interviewers want to know more, they will ask. One common mistake is to overly sell yourself. Long introduction not only will bore interviewers, but also shorten your time for coding questions.
Another common mistake is what I called “too obscure”. More often than not, it’s not because the candidate is bad at communication, but the introduction requires so much context that no one can understand without relevant background. Grab an engineer friend who doesn’t know much about your work, test if he/she can understand your introduction.
Another tip here is to be relevant. It’s highly recommended to have slightly different introduction per company. You want to show that you are capable to the position because you have relevant experience. This is definitely not required but would be a plus point if you have. If all your past projects are completely irrelevant (e.g. you worked on hardware but looking for a software position), then just keep it concise. It can’t be worse by talking about a completely irrelevant project with all the details.
Sometimes, interviewers will spend some time discussing the product with you. This doesn’t usually happen in Google interviews, but it’s much more common for Facebook, Airbnb, and Uber.
One of the most common questions is do you have any suggestions for our products. There’s no clear cut between good and bad answers, but it can certainly make a big difference if you can provide some insights.
The idea here is twofold. First, from the company’s perspective, it’s very very important to make sure that candidates really care about the product. As an interviewer, I won’t hire anyone who has no idea about what I’m working on. Second, it’s always better to have some product sense as an engineer. It may not be required, but can make you stand out for sure.
In fact, this is not hard to prepare and maybe you don’t really need to prepare at all. If you are enthusiastic about the company’s product, you are certainly able to provide insightful suggestions. As a practice, try to organize your language and provide quality feedback clearly.
Now, let’s discuss this trending term “culture fit”. You might have heard about culture fit over and over again in recent years and most companies begin to care more about it than ever. I don’t think it’s just a hype. I would say for everyone should think about it, which is true for both the company and the candidates.
So what is the culture fit? “Cultural fit is a concept that can be hard to define, but everyone knows when it is missing”. Every company, no matter how big it is, has certain norms and beliefs that everyone follows. It’s not a specific rule that forces people to behave in the same way, nor is it just a slogan that people never act on it. That’s why culture is the best term to define it.
The most famous example is Facebook’s “move fast and break things”. The core belief is to test things as early as possible in order to avoid over-engineering. You can Google it to learn more about this. The point is that interviewers are responsible for evaluating if the candidate really matches this culture. It’s not easy to tell, but from all the discussions people can still get some ideas. For example, in the system design interview, interviewers can definitely know if you tend to over-engineer things.
Another example is Airbnb. Usually, you will have a short interview that is entirely focused on the culture fit. You will be asked about your experience with the product, why you want to join Airbnb and you may also talk about your career goal. If you don’t really trust Airbnb’s mission and just aim at a salary increase, I doubt if you will get the offer.
“How can I make myself fit the company’s culture?” is clearly a wrong question to ask. You don’t need to fit the culture, you should evaluate the culture.
The biggest misconception is think the interview as an exam. However, I would say it’s a two-way choice. During the interview, candidates should evaluate the interviewer and the company at the same time. You might have completely different impression after talking with people who work at that company.
In terms of culture fit, I think a better interpretation would be evaluating if the company is really a good fit for you. You don’t need to significantly adjust yourself to fit the company if you don’t believe in its value. However, you should at least investigate and understand its culture.
A lot of people have no idea about the company they are interviewing. To me, it’s like you are dating a girl without knowing her background. This is exactly the same reason that “Why join us” should be a very simple and straightforward question for you. If you have thought about whether the company is a good fit for you, you should be able to answer within seconds. If you don’t believe in the company’s mission, maybe you shouldn’t have applied in the first place.
Questions For Interviewers
At the end of each interview, you usually will have 5min to ask any questions to the interviewer. This process is completely optional, but it’s recommended to ask. The benefit is that you’ll know more about the interviewer and the company. Also, showing your interests to the company is always a good sign.
Don’t think this process as a way to increase your chance, although it might happen. A better approach is just ask whatever questions in your mind about the company and it’ll take care everything else.
Don’t ask about your interview performance/result. Not only will you not get the authentic feedback, but it may make interviewers awkward as they cannot tell you the result immediately. This is a question for HR later, not for the interviewer.
Although non-technical questions can be an important part of the interview, the truth is that most people tend to over-worry about it.
Most of the time, you just need to be yourself. If they think you are not a good fit in terms of culture, it might not be a bad thing as it’s much better than joining the company and everything is not the way you thought.
You can definitely prepare non-technical questions right before your interview, but do focus on technical questions, which is really the core of the interview.
If you want to have more guidance from experienced interviewers, you can check Gainlo that allows you to have mock phone interviews with engineers from Google, Facebook etc..