What Do You Need to Know as a Junior Frontend Developer + Bonus Interview Questions
Tags: javascript, webdev, beginners
Published: 2020-11-02 15:29:41

When you start learning about frontend and gain some knowledge to develop simple webpages, you might ask yourself a question: "Am I ready to get a first job?".

Requirements in job descriptions often say: "knowledge of HTML, CSS and JavaScript" or "you should know React/Angular/Vue", but what does it really mean?

In this post I will try explain what you really need to know to get hired as Junior Front-end Developer. It can change from job to job, but this is a nice overview of skills you need to know.

## What you need to know about HTML as Junior Front-end Developer

At first glance, it is the easiest part of web development, but it can cause trouble even for experienced developers. As a Junior you should know the most common HTML elements and how they effect SEO.

### Common HTML Interview Questions

1. Rewrite given sample of code using proper HTML elements.
2. Which parts of HTML have the greatest impact on SEO.
3. What you should include to change site thumbnail when sharing on social media.
4. How to optimize images for the best performance and quality?
5. What is `defer` and `async` attribute in `script` element and what's the difference?

## What you need to know about CSS as Junior Front-end Developer

As a Junior Front-end Developer you should know most of CSS properties.

You should know how to build common UI elements such as a Modal or Multi-level Navigation, how to implement CSS Animations and use Flexbox and CSS Grid.

Knowledge of Responsive Design and good practices of developing for smaller screens is often must have.

In commercial projects you will rarely see a plain CSS files. Learn about are CSS preprocessors such as SCSS, BEM methodology and CSS-in-JS.

### Common CSS Interview Questions

1. What is the difference between `box-sizing: content-box` and `box-sizing: border-box`.
2. What are the good practices of CSS Animations? What you should avoid and why?
3. Rewrite given sample of code in SCSS using BEM methodology.
4. What values of `display` property you know? What are the differences?

## What you need to know about JavaScript as Junior Front-end Developer

During job interview you should expect questions about DOM manipulation, using the most common array methods and many others parts of JavaScript. It's hard to list all of them. In the end you should be able to understand code written in JavaScript and write simple features. I would recommend you to take a look at [Functional Programming in Javascript Series](https://www.youtube.com/watch?v=BMUiFMZr7vk) from Fun Fun Function channel on Youtube and free [JavaScript Algorithms And Data Structures](https://learn.freecodecamp.org/) course on freeCodeCamp. After you complete it you should be able to answer most of the questions related to JavaScript.

### Common JavaScript Interview Questions

1. What is the difference between var, let and const?
2. Use `filter` array method to remove every odd number from given array.
3. Implement `reverse` method, which is available on every String. Ex. using `"string".reverse()` gives `"gnirts"`.
4. How does `this` behave in arrow function and regular function?

## What you should know about JavaScript Framework such as React, Angular or Vue

Knowledge of JavaScript framework doesn't have to be required to get hired as a Junior Frontend Developer. But for some companies it is needed to start working in the project, for others you will gain extra points  during the interview.

The most common way to test your framework knowledge will be a task to complete before the interview. You should know how to interact with external REST APIs, manage and send form data, implement simple UI elements such as a modal, dropdown, tabs or slider.

It's good to know code testing techniques so you can at least talk about them.

### Common React/Angular/Vue Interview Questions

1. Create application, which fetches list of movies from API, can sort them and display movie details on a separate page (task before interview)
2. Use state management library (ex. Redux or Mobx in React) to implement counter. You should be able to increment and decrement counter using buttons.
3. Describe how to debug web application in given framework.

## Bonus: Soft skills

It is very important to have good soft skills when applying for a job. Developing apps is almost always done as a team. During interview you should present yourself as a person which is easy to communicate and work with.

Be truly interested and engaged in a conversation. Try to explain and describe your solutions. You will have much bigger chance to get hired if the interviewer will like you.

Before the interview look for information about the company you are applying for and try to use it during the conversation.

## What is the best way to show your experience

Remember, you don't need to have commercial experience to get Junior Front-end Developer Job. Instead, you should show your skills in side projects. Look at [5 Javascript Projects You Should Build as Junior Frontend Developer](https://slawkolodziej.com/posts/5-javascript-projects-you-should-build-as-junior-frontend-developer) article for ideas.

---

I'm regularly publishing my insights on web development. 
Consider [subscribing to my newsletter](https://slawkolodziej.com/newsletter).
Visit my blog at [slawkolodziej.com](https://slawkolodziej.com) to find out more interesting content.
Follow me on [Twitter](https://twitter.com/slawkolodziej).