├── .editorconfig
├── CONTRIBUTING.md
├── LICENSE.md
├── README.md
└── Translations
├── Bulgarian
└── README.md
├── Chinese-Traditional
└── README.md
├── Chinese
└── README.md
├── Croatian
└── README.md
├── Czech
└── README.md
├── Danish
└── README.md
├── Dutch
└── README.md
├── French
└── README_FR.md
├── German
└── README.md
├── Greek
└── README.md
├── Hungarian
└── README.md
├── Indonesian
└── README.md
├── Italian
└── README_IT.md
├── Japanese
└── README.md
├── Korean
├── README_KR.md
└── Reference_KR.md
├── Latvian
└── README.md
├── Polish
└── README_PL.md
├── Portuguese
└── README.md
├── Romanian
└── README.md
├── Russian
└── README_RU.md
├── Serbian
└── README.md
├── Slovakian
└── README.md
├── Slovenian
└── README.md
├── Spanish
└── README_ES.md
├── Swedish
└── README.md
└── Turkish
└── README_TR.md
/.editorconfig:
--------------------------------------------------------------------------------
1 | # editorconfig.org
2 |
3 | root = true
4 |
5 | [*]
6 | charset = utf-8
7 | end_of_line = lf
8 | indent_size = 2
9 | indent_style = space
10 | insert_final_newline = true
11 | trim_trailing_whitespace = true
12 |
13 | [*.md]
14 | trim_trailing_whitespace = false
15 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing to Front-end Developer Interview Questions
2 |
3 | Please take a moment to review this document in order to make the contribution
4 | process easy and effective for everyone involved.
5 |
6 | Following these guidelines helps to communicate that you respect the time of
7 | the developers managing and developing this open source project. In return,
8 | they should reciprocate that respect in addressing your issue or assessing
9 | patches and features.
10 |
11 |
12 | ## Using the issue tracker
13 |
14 | The [issue tracker](https://github.com/h5bp/Front-end-Developer-Interview-Questions/issues) is
15 | the preferred channel for spelling mistakes, errors or any general feedback. Please respect the following restrictions:
16 |
17 | * Please **do not** derail or troll issues. Keep the discussion on topic and respect the opinions of others.
18 |
19 | * Please **do not** open issues or pull requests that involve including **answers** to any of the questions.
20 |
21 |
22 | ## Pull requests
23 |
24 | Please adhere to the coding conventions used throughout the project (spelling, indentation, punctuation etc.).
25 |
26 | Adhering to the following process is the best way to get your work included in the project:
27 |
28 | 1. [Fork](https://help.github.com/articles/fork-a-repo) the project, clone your fork, and configure the remotes:
29 |
30 | ```bash
31 | # Clone your fork of the repo into the current directory
32 | git clone https://github.com//Front-end-Developer-Interview-Questions.git
33 | # Navigate to the newly cloned directory
34 | cd Front-end-Developer-Interview-Questions
35 | # Assign the original repo to a remote called "upstream"
36 | git remote add upstream https://github.com/h5bp/Front-end-Developer-Interview-Questions.git
37 | ```
38 |
39 | 2. If you cloned a while ago, get the latest changes from upstream:
40 |
41 | ```bash
42 | git checkout master
43 | git pull upstream master
44 | ```
45 |
46 | 3. Create a new topic branch (off the main project development branch) to
47 | contain your feature, change, or fix:
48 |
49 | ```bash
50 | git checkout -b
51 | ```
52 |
53 | 4. Locally merge (or rebase) the upstream development branch into your topic branch:
54 |
55 | ```bash
56 | git pull [--rebase] upstream master
57 | ```
58 |
59 | 5. Squash your commits down to a single one (we want to keep the master branch nice and clean)
60 |
61 | 5. Push your topic branch up to your fork:
62 |
63 | ```bash
64 | git push origin
65 | ```
66 |
67 | 7. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
68 | with a clear title and description.
69 |
70 | **IMPORTANT**: By submitting patches, you agree to allow the project owners to license your work under the terms of the [MIT License](LICENSE.md).
71 |
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2012 - 2015 Contributors to https://github.com/h5bp/Front-end-Developer-Interview-Questions
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
10 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | #Front-end Job Interview Questions
2 |
3 | This file contains a number of front-end interview questions that can be used when vetting potential candidates. It is by no means recommended to use every single question here on the same candidate (that would take hours). Choosing a few items from this list should help you vet the intended skills you require.
4 |
5 | **Note:** Keep in mind that many of these questions are open-ended and could lead to interesting discussions that tell you more about the person's capabilities than a straight answer would.
6 |
7 | ## Table of Contents
8 |
9 | 1. [General Questions](#general-questions)
10 | 1. [HTML Questions](#html-questions)
11 | 1. [CSS Questions](#css-questions)
12 | 1. [JS Questions](#js-questions)
13 | 1. [Network Questions](#network-questions)
14 | 1. [Coding Questions](#coding-questions)
15 | 1. [Fun Questions](#fun-questions)
16 |
17 | ## Getting Involved
18 |
19 | 1. [Contributors](#contributors)
20 | 1. [How to Contribute](https://github.com/h5bp/Front-end-Developer-Interview-Questions/blob/master/CONTRIBUTING.md)
21 | 1. [License](https://github.com/h5bp/Front-end-Developer-Interview-Questions/blob/master/LICENSE.md)
22 |
23 | #### General Questions:
24 |
25 | * What did you learn yesterday/this week?
26 | * What excites or interests you about coding?
27 | * What is a recent technical challenge you experienced and how did you solve it?
28 | * What UI, Security, Performance, SEO, Maintainability or Technology considerations do you make while building a web application or site?
29 | * Talk about your preferred development environment.
30 | * Which version control systems are you familiar with?
31 | * Can you describe your workflow when you create a web page?
32 | * If you have 5 different stylesheets, how would you best integrate them into the site?
33 | * Can you describe the difference between progressive enhancement and graceful degradation?
34 | * How would you optimize a website's assets/resources?
35 | * How many resources will a browser download from a given domain at a time?
36 | * What are the exceptions?
37 | * Name 3 ways to decrease page load (perceived or actual load time).
38 | * If you jumped on a project and they used tabs and you used spaces, what would you do?
39 | * Describe how you would create a simple slideshow page.
40 | * What tools do you use to test your code's performance?
41 | * If you could master one technology this year, what would it be?
42 | * Explain the importance of standards and standards bodies.
43 | * What is Flash of Unstyled Content? How do you avoid FOUC?
44 | * Explain what ARIA and screenreaders are, and how to make a website accessible.
45 | * Explain some of the pros and cons for CSS animations versus JavaScript animations.
46 |
47 | #### HTML Questions:
48 |
49 | * What does a `doctype` do?
50 | * What's the difference between standards mode and quirks mode?
51 | * What's the difference between HTML and XHTML?
52 | * Are there any problems with serving pages as `application/xhtml+xml`?
53 | * How do you serve a page with content in multiple languages?
54 | * What kind of things must you be wary of when design or developing for multilingual sites?
55 | * What are `data-` attributes good for?
56 | * Consider HTML5 as an open web platform. What are the building blocks of HTML5?
57 | * Describe the difference between a `cookie`, `sessionStorage` and `localStorage`.
58 | * Describe the difference between `