Why is FAANG so obsessed with whiteboard coding interviews?

Jun 5, 2023
Coding Interview
Discover the technical skills FAANG companies crave in coding interviews, focusing on algorithms and data structures.
FAANG companies are massive organizations. And the more people are supposed to work together the more complex it gets. That's why FAANG companies are looking for engineers they can move around projects and it good results can be expected, no matter what problem they are assigned too. Here, I am sharing the exact skills that big companies like Google, Amazon or Microsoft are hoping to find in you during a whiteboard coding interview.
The emphasis varies a bit across companies but everyone is looking for more or less the same set of skills in their applicants:

1. Do you know the language you claim to know

with the proficiency you claim to have in it? If you say you know Javascript but can't write the proper syntax for a for loop, that is a giant red flag.

2. Do you properly analyze the problem

At hand and devise a conceptually correct solution? Candidates often propose solutions that wouldn't work even if implemented properly.

3. Do you apply algorithms and data structures appropriately in your solution?

In technical interviews, particularly at FAANG companies, it's crucial to demonstrate practical knowledge of algorithms and data structures. Candidates should show aptitude in selecting appropriate tools, like sorting algorithms or data structures like trees, to enhance solution efficiency and scalability.

4. Can you actually write the code

to implement those things? What level of quality does your code have - is it reasonably structured, variables have reasonable names, not too many bugs, etc.? Candidates often propose a reasonable solution but can't actually implement it.

5. Can you analyze the complexity

of your code in speed and memory? Do you have reasonable intuition or knowledge about how close your code comes to optimality? If the first draft is sub-optimal, can you fix it or propose how?

6. Where are you on the range?

Therefore, there are extensions of the problem, only the best candidates think of. Like how the solution performs for giant data sets, whether a skewed distribution of input causes problems, how parallelizable the code is, etc.
Thanks for reading this article! If you have questions please connect with me on LinkedIn or Twitter.