22 questions and 12 skills to help you find and hire the perfect Frontend Developer
Frontend Developer
A three-stage interview process for assessing junior, mid-career, or senior level frontend developer candidates. This flow includes interviews for evaluating soft skills, technical skills, as well as architecture skills.
Interviews
Evaluated skills
- Engineering
- Communication
- ECMAScript 2015
- API Design
- CSS Frameworks
- Agile Product Development
- Analytical thinking
- Engineering Management
- HTML5
- JavaScript Frameworks
- Jest (JavaScript Testing Framework)
- Web Deployment
Frontend (Technical)
A brief, and rapid javascript 'quiz'. Use to assess the candidates breath and depth of practical knowledge related to frontend fundamentals.
- What are the most common HTTP methods and what are they used for?Question #16 minutes
- API Design
Evaluation criteria
- GET: Retrieve information from the server, but do not apply any other effects on the data
- HEAD: Same as GET, but it only returns the status line and header section, not the body
- POST: Sends a request body payload to the server (e.g. form data, file upload, customer information, ...)
- PUT: Replace the entire target resource with the given request body payload
- DELETE: Remove the target resource
- Do you have experience with semantic HTML and ARIA? Can you explain these concepts? Why are they important?Question #25 minutes
- HTML5
Evaluation criteria
- Should be able to articulate what semantic HTML is and accurately describe why it is important.
- Should be able to definite ARIA (Accessible Rich Internet Applications) and explain accessibility.
- What is the difference between let, var, and const?Question #32 minutes
- ECMAScript 2015
Evaluation criteria
- Var is function scoped, and can be redeclared
- Let is block scoped, and can be redeclared
- Const is block scope, and cannot be redeclared
- What is the difference between grid and flexbox, when do you use one vs the other?Question #43 minutes
- Engineering
Evaluation criteria
- Flexbox was designed for layout in one dimension - either a row or a column
- Grid was designed for two-dimensional layout - rows, and columns at the same time
- What are the advantages of using ES6 Template Literals?Question #53 minutes
- ECMAScript 2015
Evaluation criteria
- Syntactic sugar
- Allows expression interpolation (javascript variables directly in string)
- Briefly explain what async await is used for, and how it is different from promises.Question #63 minutes
- Engineering
Evaluation criteria
- Syntactic sugar
- Makes code appear more synchronous
- Can you describe the main difference between the Array.forEach() loop and Array.map() methods and why you would pick one versus the other?Question #73 minutes
- ECMAScript 2015
Evaluation criteria
- forEach returns undefined, map returns an array
- Explain your favourite javascript tool or framework, what are its advantages? What are its disadvantages? How does it differ from its competitors?Question #85 minutes
- JavaScript Frameworks
Evaluation criteria
- We are just looking to gauge their level of professional interest in frontend development
- Have you implemented any testing before? Can you tell us the difference between unit testing and e2e testing? Tell us about the frameworks you have used.Question #93 minutes
- Jest (JavaScript Testing Framework)
Evaluation criteria
- Unit testing verifies that individual, isolated parts work as expected
- E2E testing usually preforms a clickthrough of a website
- Cypress, jest, nightwatch, mocha are common frameworks
- What is the difference between CSS preprocessors and a utility based approach to styling your apps?Question #103 minutes
- CSS Frameworks
Evaluation criteria
- A CSS preprocessor is a program that lets you generate CSS from the preprocessor's own unique syntax
- Frameworks such as Tailwind or Bootstrap present a large amount of flexibility utility classes
- Say you need a key for access to a third party API, where will you store this key? What dangers are there with improper storage of your private keys?Question #113 minutes
- Web Deployment
Evaluation criteria
- API keys are generally stored in env files, so you can manage different environments
Frontend (Soft Skills)
A developer soft skill interview, focused on assessing the candidates teamwork and process related skills.
- What excites or interests you about coding? What technologies do you find interesting?Question #15 minutes
- Engineering
Evaluation criteria
- Clear preferences and aversions reflect experience
- Tell us about your preferred development environment, what tools you are comfortable with, and what tools you want to learn?Question #25 minutes
- Engineering
- Can you describe your workflow when you create a web page?Question #35 minutes
- Agile Product Development
- If you jumped on a project and you had a different opinion about linting rules or code formatting, how would you handle this in regards to your fellow team members?Question #43 minutes
- Communication
- What aspects are essential for a good code review? How do you make sure you are providing constructive criticism?Question #55 minutes
- Communication
- You are assigned to a ticket, and you are asked to gather information, estimate, and solve it. What does this process look like for you?Question #68 minutes
- Communication
- Do you have any opinion on CSS methodologies, frameworks, or libraries? How do you like to style your pages and apps?Question #75 minutes
- CSS Frameworks
- Are there any questions you would like to ask us about our development processes or technology choices?Question #810 minutes
- Engineering
Frontend, Problem Solving
Intended as a back and forth, assessing their ability to breakdown requirements and develop a working plan.
- You are asked to implement a registration and login page. What considerations do you need to take into account when designing and implementing this functionality?Question #115 minutes
- API Design
Evaluation criteria
- They should mention what are the specifications for login requirements, such as OAuth, business emails, etc.
- They should mention auxiliary pages such as change password, forgot password, and forgot username.
- You are in a position where you can make architectural choices. Two developers are arguing over an arbitrary linting rule; how do you decide which rule to implement?Question #25 minutes
- Engineering Management
Evaluation criteria
- We are looking for an understanding that business needs dictate developer standards
- How would you handle the deployment of a modern web app? From your local machine to the web? Feel free to use your dream technologies. IE: Marketing website with blog, app, phone app, interaction with backend.Question #320 minutes
- Analytical thinking
Evaluation criteria
- If they need an example, ask them to recreate Uber
- Have them identify their blind spots, and where they excel
- Describe technology choices for marketing website, SPA, and identify what other components would be necessary