front-end-questions

It’s hard to evaluate the knowledge of a front-end developer who is looking for a new job, right? It’s probably even harder to find and select the right candidate for a certain job, having lots of submissions. That’s why a logic, fast and robust process of recruitment is required.

Here is a vast list of different questions that will help you evaluate the knowledge of a candidate, at an interview. The list was started in 2009 as a collaboration of some well known developers: @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed and @iansym. Since then, it was populated with interesting questions from more than 100 contributors.

You can use a mix of these questions to find out more about the capabilities of a candidate and who knows what interesting discussions might start from that perspective. Have a look at some of these questions:

General questions:

  • What did you learn recently?
  • What was your latest technical challenge and how did you solve it?
  • Tell us a little about your preferred development environment.
  • Can you describe your workflow when you create a web page?
  • If you have 5 different stylesheets, how to best integrate them into the site?
  • How many resources will a browser download from a given domain at a time?
  • What tools do you use to test the performance of your code?
  • What is Flash of Unstyled Content? How do you avoid FOUC?
  • Explain what ARIA and screenreaders are, and how to make a website accessible.
  • What are the advantages/disadvantages of CSS animations vs. JavaScript animations.

HTML questions:

  • What is the purpose of doctype?
  • What’s the difference between standards mode and quirks mode?
  • What’s the difference between HTML and XHTML?
  • Are there any problems with serving pages as application/xhtml+xml?
  • How do you serve a page with content in multiple languages? What about a multilingual site?
  • Why do we need data- attributes?
  • Let’s suppose that HTML5 is an open web platform. What are the building blocks of HTML5?
  • What is the difference between a cookie, sessionStorage and localStorage.
  • What is the difference between <script>, <script async> and <script defer>.
  • Why is it generally a good idea to place CSS <link>s between <head></head> and JS <script>s just before </body>? Are there any exceptions?

 CSS questions:

  • What is the difference between classes and ID’s in CSS?
  • Describe z-index and how stacking context is formed.
  • Why should we use CSS sprites, and how to implement them on a site.
  • What are your favorite image replacement techniques?
  • How would you approach fixing browser-specific styling issues?
  • Have you ever used a grid system, and if so, what do you prefer?
  • Have you used media queries or implemented responsive layouts?
  • Are you familiar with styling SVG?
  • What are the cons and pros of CSS preprocessors?
  • What does * { box-sizing: border-box; } do? When we should use it?
  • List as many values for the display property that you can remember.
  • What’s the difference between inline and inline-block?
  • What’s the difference between a relative, fixed, absolute and statically positioned element?
  • What existing CSS frameworks have you used locally, or in production? How would you change/improve them?
  • Have you played around with the new CSS Flexbox or Grid specs?

JavaScript questions:

  • Explain how this works in JavaScript
  • How do you go about testing your JavaScript?
  • What do you think of AMD vs CommonJS?
  • What is a closure, and how/why would you use one?
  • What’s a typical use case for anonymous functions?
  • How do you organize your code? (module pattern, classical inheritance?)
  • What’s the difference between host objects and native objects?
  • Difference between: function Person(){}, var person = Person(), and var person = new Person()?
  • What’s the difference between .call and .apply?
  • Explain Function.prototype.bind.
  • When would you use document.write()?
  • Explain AJAX in as much detail as possible.
  • Explain how JSONP works (and how it’s not really AJAX).
  • What’s the difference between an “attribute” and a “property”?
  • What is the difference between == and ===?

Have a look at the complete list of interview questions on github. You can also test your own knowledge or suggest more interesting questions, we will be happy to list the best ones!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may also like