10 Most Common Mistakes To Avoid While Preparing for FAANG Company Coding Interviews
In this blog post Vivekanad Vivek ex-Amazon SDE shares his thoughts on mistakes people make while preparing for a FAANG company interview and how to avoid them.
Here are the 10 most common mistakes students make while preparing for FAANG company interview
- Trying to Learn Multiple Languages.
- Focusing on Latest Tech Stack for FAANG Coding Interviews.
- Having No Good Project for Resume.
- Learning Solutions to Coding Interview Problems and not the process of thinking through the problem.
- Unnecessarily targeting advanced Data Structures and Algorithms.
- Focusing only on Data Structures and Algorithms for the coding interview.
- Ignoring Clean Coding Principles, Design Principles and Patterns.
- Not Understanding how Systems Scale and Interact
- Stuffing the resume with Irrelevant Content.
- Applying directly on Career Pages of the companies.
Let’s see each of the above points one by one and how to avoid the common mistakes.
Trying to Learn Multiple Languages
Many people think that a knowledge of multiple languages is important for cracking FAANG coding interviews. It is in fact not the case.
If you are decent enough with one programming language and can implement basic logic in that language, it is more than sufficient.
No interviewer would ideally reject a candidate who coded in language not of his choice. In the language of your choice, it is important to learn the important library functions which are available out of the box. For example — knowledge of Standard Template Library in C++ or Collections Framework in Java is really important.
Focusing on Latest Tech Stack for FAANG Coding Interviews
Although having the knowledge of the latest tech stack is a good idea for keeping yourself up to date with the latest trend. Having said that, tech stacks keep changing and there is no guarantee that the framework you learn today will stay relevant tomorrow.
Having fundamental knowledge of Computer Science Concepts is much more important than any tech stack. For interviews at startups that work on a particular framework for an experienced graduate, this might turn somewhat important but not for FAANG Coding Interviews of freshers.
Having No Good Project for Resume
Apart from the coding interview preparation, you also need to focus on getting the resume shortlisted for the interview. For that, it is really important to have a good working project deployed and its link should be put in the resume.
The project could be on any Computer Science topic. The best idea here is to go for a full stack website development project. You can easily deploy it and put the hosted link in your resume.
We at programming pathshala help our students with resumes, mock interviews & development projects. Students get a clear idea and roadmap for coding interview preparation in our 7-days free trial.
Learning Solutions to Coding Interview Problems and not the process of thinking through the problem
There is no guarantee that the questions in the interview will be repeated from the ones available online.
So, even if you manage to go through all the available problems and their solutions online (nearly impossible task), it might still happen that you are given a brand new problem to solve in the coding interview.
For that, it is better to understand the concepts involved in each topic and try to see how you can spot that pattern in new problems. This will make sure that you are able to solve even new problems on existing concepts.
Renaissance, a 6-month course by PPA covers all these concepts and subconcepts of each topic in greater detail and teaches you how to think through new problems.
Unnecessarily targeting advanced Data Structures and Algorithms
Many people, instead of focusing on the common data structures and algorithms, try to learn advanced concepts like Red Black Trees, AVL Trees, String Matching Automaton, etc. These concepts are actually not required, even for coding interviews of FAANG.
These companies stick to problems on common data structures and algorithms, specifically on Searching, Two Pointers, Hashing, Stacks, Linked Lists, Trees, Dynamic Programming and Graphs. But, they would test your depth in these topics. So, make sure you explore all these concepts with enough gravity.
Focusing only on Data Structures and Algorithms for the coding interview
Data Structures and Algorithms, although extremely important, is not the only thing that will be asked in the coding interview of FAANG. Apart from this, there is heavy focus on Computer Science Fundamentals concepts as they are extensively used in day-to-day life of a software developer.
Understanding concepts of processes, memory management and concurrent programming in Operating Systems is extremely important.
SQL is another common query language which you would frequently encounter while doing development. So knowledge about databases is extremely important.
Lastly, you would require knowledge of networks because your systems will definitely interact with each other through networking.
Must Read: Guide for an ultimate Tech Career
Ignoring Clean Coding Principles, Design Principles and Patterns
When you become a software engineer, you are not expected to write code that works but also a code which is self explanatory, modular and maintainable.
For this, knowing design and clean coding principles becomes very important.
In an interview, you would be expected to not only write functionally correct code but also a modular one. Apart from that, in interviews involving Low Level Design, it will also be necessary for you to follow the common Design Patterns, if applicable.
Not Understanding how Systems Scale and Interact
Software development is not limited to just coding out certain APIs for frontend. At large scale systems like Amazon, Uber, etc, greater optimisations are required to handle so much load.
For this, developing an understanding about Distributed Databases, load balancers, asynchronous queues, etc becomes mandatory. Especially if you have an experience of >2 years, this knowledge is even tested in System Design rounds.
Stuffing the resume with Irrelevant Content
Apart from preparation for coding interviews at FAANG, you also need to build a good resume side by side so that you get an opportunity for an interview at these companies.
For this, it is a good idea to have only relevant and direct points in your resume.
An ideal resume should be made in LaTex and should contain information about your education, work experience and projects, achievements (related to academics), relevant skills and certifications.
It is not a good idea to stuff your resume with personal information like a photograph, name of parents, hometown, etc.
Applying directly on Career Pages of the companies
It is very difficult to get your resume shortlisted for Coding Interview at FAANG amongst 1000s of applicants. A better idea to approach for an interview is to go for a referral from an existing employer.
The best way for this is to make sure you have a good network on Linkedin. You can leverage your college alumni network as well to get referrals to the companies they work at.
Even some coding interview preparation courses like Renaissance help you with referrals if you perform well during the preparation.
Read about the success stories of students at Programming Pathshala here who by avoiding these mistakes and working hard for their preparation were able to crack top tech companies.
To sum up
I have compiled these points from my previous experiences at Amazon and at Programming Pathshala. Every month several working professionals join our courses to prepare for FAANG companies and on talking with them I find that they are making one or the other similar mistake.
Hard work always pays off but converting it to smart work increases our chances of success. We at Programming Pathshala provide our students with the most-required tips and tricks to ace FAANG and other top-tech interviews. Do check our 7-days free trial to know more about us.