01 logo

How to prepare for a front-end developer interview

The types of interviews to expect and how to prepare for them

By MidiPublished 2 years ago 5 min read
Like
How to prepare for a front-end developer interview
Photo by Charles Deluvio on Unsplash

Introduction

Preparing for a technical interview can be difficult, very difficult. There is no uniform format or standard followed by all companies across the board for front-end developer interviews.

If you already have a specific company in mind or already have an interview scheduled, I’d do some research on that specific company. There’s a lot of information you can find on Glassdoor, including the experiences of past interviewees, the interview/rounds and formats, and even some specific interview questions and prompts. Do keep in mind though that not all the information available on Glassdoor is up-to-date or 100% accurate. Furthermore, your interview experience and questions can be markedly different from what’s posted on the Glassdoor pages. If you’re working with a recruiter or hiring manager, I would ask them directly what kind of interview formats to expect and if there’s anything specific you should do to prepare.

If you don’t have a specific company in mind or don’t have an interview already scheduled, I’ve compiled below the different popular interview formats used by companies for their front-end developer roles. Your interview can compose some form of the ones I’ve mentioned below or a combination of them. I would go through each format and sub-topics one by one so to prepare as thoroughly as possible.

1 — Trivia

These are questions which test your knowledge on the key concepts and have clear, non-subjective answers. These are usually done in the first few stages of an interview and are meant to test if you understand the theory behind the technologies you use.

The trivia topics are:

  • HTML
  • CSS
  • JavaScript
  • If the role(s) you’re interested in include(s) specific front-end frameworks and tools, brush up on the basic trivia questions for those frameworks and associated tools as well.

    2 — Practical Coding

    This should be where the bulk of your time in your interview prep should go. These types of prompts can be intimidating at first, but you can definitely get better with time and practice.

  • Practical coding exercises tests your ability in:
  • Breaking down a large problem into manageable pieces
  • Understanding trade-offs in different approaches
  • Asking clarifying questions
  • Debugging code
  • Validating an implementation
  • Testing edge cases
  • There are a few ways the practical coding sections can be like: it can test algorithms, make you write utility functions or libraries, or ask you to build out a user interface. I’ll explain these further in a bit.

    Concepts

    In order to do well in this portion, you should study the following topics:

  • JavaScript Design Patterns
  • Data Structures
  • Sorting
  • Time and Space Complexity
  • Algorithms
  • These are LeetCode style algorithm problems. Although these are less popular nowadays in favor of the other styles of testing practical coding skills, it’s still a likelihood nonetheless and is best to practice. Go to LeetCode.com and go through the different prompts to practice your skills.

    If you’re short on time, you should focus on trees because trees are a very common data structures in the front end due to the fact that the DOM is a tree.

    Utility Functions

    These are like LeetCode questions, but with less emphasis on complicated algorithms and more focused on practical use cases. In these scenarios, you would be asked to implement a particular utility function. Almost all utility functions that are asked for exist already within JavaScript’s core or within famous third-party libraries like Lodash.

    Basic questions of this type should take you 10–15 minutes. More advanced questions can take around 25–30 minutes.

    Build User Interfaces (Component/App/Game)

    Because building UIs is a huge component of the job of a front-end engineer, these types of prompts are a good way to assess engineer’s skillsets, especially in HTML, CSS, and JS.

    Companies that ask such questions usually ask candidates to code in one of these three ways:

    1. CodePen (or another online editor) — This is the increasingly popular option.
    2. BYOE (Bring Your Own Environment) — In this type of scenario, you can bring your own development environment/laptop and choose whether you want to use your local environment or an online code editor.
    3. Whiteboard — In this type of scenario, you would have to write all the HTML, JS, CSS on a whiteboard. This method is not as popular as the above two.

    To prepare for this type of interview:

  • Practice making small applications in CodePen to get familiar with the environment, UI, shortcut, available libraries, etc.
  • When completing practice questions, think about what clarifying questions you could ask in a real interview like unclear requirements, edge cases, etc.
  • Initially, don’t think about how much time it’s taking you but rather on completing the question to the best of your ability.
  • Once you come up with a solution, review your approach and see what you can do to improve your solution, how you could refactor your code for readability, extensibility, re-usability, and performance.
  • Redo the same question a few times using different approaches (ex. vanilla JS vs using a framework like React).
  • 3— System Design

    This type of interview is more popular for senior roles. The question topic asked is quite similar to the Build a User Interface-format but with more focus on architecture and design.

    You will be presented with a question such as “How would you design a video streaming service?” and have to talk through the system design at a high-level, occasionally drilling into specific aspects. Here, you should talk about:

  • Requirements clarification
  • Design patterns and tradeoffs, including API design
  • Architecture
  • Possible implementations
  • Database schema / Data model design
  • Scalability
  • Performance
  • User experience
  • Security
  • Accessibility
  • Multi-device support
  • Because this format of questions involve multiple components and knowledge across the web stack, you usually don’t have to go into the lower-level details and can keep the discussion at a high level.

    4 — Fit

    Culture, Behavior, and Experience

    Look into this section if you already know what company you are interviewing with. Companies try to determine if you “fit” within their company culture. As such, there may be a component of your interview that is dedicated to just that.

    To prepare for this type of interview:

  • Read about the company’s culture and their business through their website, blogs, and other social media platforms.
  • Know the basics about their history, their product/service lines, what direction they are going in, their key competitors, their key audience, etc.
  • Try to learn about their tech stack. See if you can come up with any interesting questions.
  • Think about the highlights and lessons learned in your current and previous jobs and experiences. Be prepared to talk about a time you did something you’re proud of and a time when you overcame an issue.
  • Know your projects. Be ready to talk about an application you’ve worked on in depth. Be able to talk about the problem you were solving, the approach you took, and the end result. Be able to explain the particular design decisions you’ve made and why you made those decisions. A good project to talk about is one that started with a specific problem where you went through a process of identifying multiple possible solutions and then chose the the best option.
  • Originally published on Medium.

    interview
    Like

    About the Creator

    Midi

    Full-Stack Developer

    Reader insights

    Be the first to share your insights about this piece.

    How does it work?

    Add your insights

    Comments

    There are no comments for this story

    Be the first to respond and start the conversation.

    Sign in to comment

      Find us on social media

      Miscellaneous links

      • Explore
      • Contact
      • Privacy Policy
      • Terms of Use
      • Support

      © 2024 Creatd, Inc. All Rights Reserved.