
Last year, I spent 6 months preparing for front-end interviews and landed offers from several FAANG+ companies. I wanted to share what I did, and the steps I took that helped me get there.
How I prepared for interviews
Like everyone else, I started with Leetcode. Still, I quickly realized that as great as Leetcode is for great general software engineering, it isn’t exactly applicable for front-end engineering interviews, as they tend to focus more on domain-specific questions.
So, I decided to scour the internet and quickly realized how tedious and difficult the process was for preparing for front-end interviews. I spent weeks just scouting the internet to find the correct resources to study for interviews. While good resources were available for the front end, I struggled to find anything that simplified the study process and showcased questions that were actually asked at companies.
Eventually, I created a large spreadsheet that listed the most frequently asked questions tagged by companies. The spreadsheet had over 5 tabs and hundreds of questions collected.
Here’s what that looked like: https://i.imgur.com/hOlZ8n3.png
Realizing I am probably not alone in my frustration with interview preparation, I started posting YouTube videos, teaching what I have learned to others, and simultaneously building a website called FrontendLead to help other engineers prepare for front-end interviews. Any link I share from my site in this post will be completely free to read and view and do not require any signup.
This entire post can also be found in an in-depth handbook for free here.
What I recommend to others while preparing for interviews
1. Get your fundamentals solid first. Refresh your data structures and algorithms.
There are plenty of free resources online; I published one for free to help you get started.
2. Start practicing front-end trivia questions
Meta and other top companies would love to test you on your foundational JavaScript knowledge.
You may get questions like:
- HTML concepts, for example: Explain the purpose of semantic HTML tags and their importance.
- CSS concepts, for example: What is the box model in CSS, and how does it work?
- For example, javascript concepts (arguably the most asked): Explain the concept of closures in JavaScript.
- Frame work-related questions, such as react, for example: How does React virtual DOM work, and why is it important?
Again, I published a free guide to share some of the most commonly asked trivia questions; you can find it here.
3. Javascript coding questions
These are the questions you will encounter the most, so you should spend the majority of your time preparing for them.
Expect questions like:
- Build a promise
- Flatten an array
- Build a debounce / throttle function
I aggregated the top 75 questions coding questions you might see during interviews here.
I want to call out something very important because I am also guilty of this mistake. Knowing the question may just be 25% of what you need to pass the interview. You might think you know the solution, but it may not be the most optimal solution and may fail certain tests.
I highly recommend solving each coding question with the code editor provided inside FrontendLead. Each problem comes with integrated unit tests and an official solution, so you can ensure you are learning the correct solution.
4. App design questions
Personal favorite type of question. There are many more real-world-related questions, and they will ask you to use the framework or vanilla JS to build a small app.
Such as:
- Build a todo list
- Debug a problem in their code
- Fetch images and render it
You can find a full list of questions to expect here.
5. React JS interview questions
Some companies may just focus on asking you more react-specific questions, so it’s a good idea to prepare yourself there, too.
Expect things like:
- What is the difference between a... premium content.
