16.3.2023

How to hire front-end developers (and 15 key questions for a job interview)

Staff Augmentation

Keywords:

Front End Developers

Interviewing a front-end developer has some specific challenges, the most common one is that technologies are constantly changing, which is why a good recommendation is to have an open mind towards developers that use a previous version of a technology.

This does not apply, of course, if the project demands having extensive knowledge about the current version of a specific framework.

Interview questions

To interview a front-end developer you need to evaluate basic skills, those are: CSS, HTML and JS. However, the questions need to always be focused on knowledge the programmers use on their daily basis, not just for seeing their problem solving capacity, but also if they know each language and have the ability of correctly using each instruction. 

CSS (Cascading Style Sheets)

  1.  What does the box model consist in? 
  2. What is the difference between absolute, relative and fixed values from the position property?
  3. What is the difference between inline and inline-block properties?
  4. What is the difference between margin and padding?
  5. How do z-index and stacking contexts work? 
  6. What is the difference between “nth-of-type()” and “nth-child()” selectors? 

JavaScript

  1. What is callback hell and what ways do you know to avoid it?
  2. What is a promise? How and where would you use them? 
  3. What is the difference between null and undefined? How would you verify these statuses?
  4. What does hoisting consist in? 
  5. What is the difference between == and ===?

HTML

  1. What is the function of doctype?
  2. What HTML label can you use to indicate that a page is available in several languages?
  3. Describe the difference between <script>, <script async> and <script defer>.
  4.  What are data- attributes and what are they good for ? 

You would have to complement the interview with a set of questions focused on a specific Javascript framework, whether it is Angular, React or Vue.

Take-home projects as a complement to the interview 

Designing tests for front-end developers might seem like a simple task, but many times those designing these tests forget to add a list of functional requirements, technical even, that make the task easier for the developer and keep him from having to send an e-mail in order to answer a question about the test.   

A classic project for developers it’s usually constituted by guidelines that define the visual aspect of it, in addition to using an API and do an additional detail like adding pagination or using a chart with filters systems. However, a test for a front-end developer with an easily understandable structure, could be composed as follows:

  1. Objective
  2. Functional requirements 
  3. Technical requirements 

What to evaluate in these types of projects?

One of the key factors for a successful test that really lets you know if a candidate will work inside your team, is evaluating really necessary skills, for instance:

  • Code´s architecture (Observing if the developer has done a good implementation of any design pattern like MVC or MVVM)
  • Testing. Checking if unit tests have been implemented and what components he decided to try.
  • Documentation. Checking functions and components that are correctly documented with the necessary parameters to be executed.

Conclusion

Although take-home tests are one of the best alternatives to evaluate front-end developers nowadays, it’s possible they don’t always turn out to be effective for all candidates.Due to time issues, some might not be able to do the test and they’d definitely rather do an automated test online, which is why it is always a good idea offering these possibilities  to the developer.