Skip to content

Instantly share code, notes, and snippets.

@doctyper
Last active September 27, 2015 18:48
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save doctyper/12428a59a8306b484376 to your computer and use it in GitHub Desktop.
Save doctyper/12428a59a8306b484376 to your computer and use it in GitHub Desktop.
Front-end Developer Questions

Before We Begin

  • Assure interviewee this is not a grill-session.
  • Don't worry about knowing all the answers.
  • This is supposed to be difficult.
  • It's a way to gauge their skill set, what their development interests are, and how we can work together.

General

  • How has your front-end skill set evolved during your time developing websites?
  • On a scale of 1-10, what is your comfort level developing with HTML, CSS & JavaScript?
  • Do you follow any particular set of coding standards/guidelines?
  • Do you have any web peers/heroes you look up to?
  • Experience with Django or Python?
  • Do you have experience with Node?
    • Do you have experience with Grunt?
  • Do you have a GitHub account?

Team Oriented

  • How well do you think you work with other fellow developers?
  • Would you feel comfortable taking a support role in projects?
  • Are you comfortable taking direction on your code?
  • Given a choice, would you rather work alone or in tandem with someone?
  • Are you comfortable leading discussions on what's technically possible or feasible given time-lines, technical limitations, etc?
  • How do you respond to client revisions, feature requests, scope creep? (open ended perhaps to discuss agile/waterfall approaches)
  • How do you make your code legible? (documentation, OO, multiple files)

HTML5

  • {a} Are you following the development of HTML5 and CSS3? Which features are you looking forward to the most, and why?
  • {a} What is your favorite feature in HTML5 and how would you use it?
  • {b} What would you change about HTML5/CSS3 if you could?
  • {b} What is your opinion on HTML5 polyfills, such as Respond.js or CSS3 PIE? Do you lean towards polyfilling browser support, or towards a more progressive approach?
  • {b} Do you prefer to crowdsource CSS/JS solutions or build functionality in-house?
    • Do you have a standing list of plugins or scripts you take advantage of?
  • {b} Do you know what responsive web design is? Could you explain it?
    • The approach that suggests that design and development should respond to the user's behavior and environment based on screen size, platform and orientation.
    • The use of media queries to appropriately display a website based on screen resolution.
  • {b} Any experience developing for the mobile web?
  • {b} Are you familiar with the HTML5 Boilerplate? Any strong opinions?
  • {a} How important is HTML validation to you?
  • {b} How important is it for you that your site works with JavaScript turned off?
  • {c} Any experience with the History API? What kind of challenges did you encounter using it?
  • {c} Any Canvas experience? Would you consider specializing in that aspect of HTML5?

CSS

  • {a} What's your typical "lowest common denominator" browser?
  • {a} Scenario: A project requires the use of a gradient background. Do you:
    • Use CSS3 to achieve the effect?
    • Use images to achieve the effect?
    • Something else?
  • {a} Do you think it's safe to drop the prefixes from the border-radius property? What about box-shadow?
    • A: Yes for border-radius, no for box-shadow.
  • {a} Are there any cutting-edge CSS properties you've used or want to use?
  • {b} Are you comfortable with the concept of CSS specificity? Which has more specificity, a class or an id?
    • A: An id will override a class.
  • {b} Have you tried your hand at CSS transitions and/or animations?
  • {c} Scenario: A project has removed IE7 from its required browser list. What HTML/CSS/JavaScript features can you now use freely?
    • IE8 support is dropped. Now what?
  • {c} Can you explain the concept of hasLayout?
    • A: An IE proprietary concept that determines how elements relate to each other
  • {c} Is there a way to change a browser's box model with a CSS property?
    • A: box-sizing
  • {a} Have you had experience using box-sizing?
  • {a} Have you worked with CSS preprocessors such as LESS or SASS? Any strong opinions?

JavaScript

  • {a} Are you comfortable coding in vanilla JavaScript?
  • {a} How strong is your dependency on jQuery? Would you be able to work well without it?
  • {a} What's your favorite jQuery function?
    • Bonus points for more obscure functions like $.delegate, $.Deferred, $.proxy
  • {a} Do you prefer native for loops or jQuery's $.each method?
    • A: Open-ended, but bonus for choosing native code.
  • {a} Do you JSHint your code?
  • {b} Do you have experience with AMD? Can you explain how you've used it in a project?
    • Asynchronous Module Definition
    • Specifies a mechanism for defining modules such that the module and its dependencies can be asynchronously loaded.
  • {b} What are some tips to optimizing your JS/jQuery code?
    • A: Open-ended. Caching variables, OO-approach, chaining, string concatenation, foreach optimization…
  • {b} What over types of libraries have you used?
    • e.g., RequireJS, etc…
  • {b} What is your templating engine of choice?
    • e.g., Mustache, Handlebars, Swig, etc.
  • {b} Is a reverse for loop faster than a regular for loop?
    • A: Yes.
  • {b} What are you using to animate the DOM?
    • Declarative animation? Scripted animation?
    • Have you heard of requestAnimationFrame? Have you used it in a project?
  • {c} Explain the difference between the JavaScript call and apply functions.
    • Call: Requires arguments to be explicitly passed
    • Apply: Arguments are passed in as an array
  • {c} Do you have experience with WebGL? How?
  • {c} What are your thoughts on object oriented patterns in JS? Do you use any?

Closer Questions

  • What's your favorite browser? Why?
  • Tabs or spaces?
  • Semicolons or ASI?
  • Favorite website that showcases HTML5?
  • Why do you want to work at RED?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment