---
# System prepended metadata

title: Fullstack interview

---

# Fullstack interview

## HTML/CSS
 - [ ] What is <head> and why do we need it in DOM structure
 - [ ] What is purpose of adding semantical tags like **header**, **nav**, **footer** to a website   
 - [ ] Difference between cookie, localStorage and sessionStorage
 - [ ] Tag **script**, its position in HTML, defer, async ?
 - [ ] Difference between window and document 

## Javascript
 - [ ] Descrtucturing. Difference between 
    const { a, b, c  } = object;
    and 
    const a = object.a;
    const b = object.b;
    const c = object.c;
    
 - [ ] const b = [];
    
    console.log(b.push(b))
    
 - [ ] Array.forEach and Array.map - difference, cases for using each one
    
 - [ ] MAP and SET objects. Usability and difference between them
    
 - [ ] const a = {};
const b = { key: "b" };
const c = { key: "c" };

    a[b] = 123;
    a[c] = 456;

    console.log(a[b]);
    
 - [ ] What returns setInterval(() => console.log("Hi"), 1000);
    
 - [ ] What is generator function
    function* generator(i) {
      yield i;
      yield i * 2;
    }

    const gen = generator(10);

    console.log(gen.next().value);
    console.log(gen.next().value);
    
 - [ ] Function declaration and Function expression. Explain **hoisting**. Array function vs Regular Function (Rest parameters vs arguments)
    
    const obj = {
          name: 'Wow',
          sing() {
            console.log('1 this ', this);
            const anotherFunc = function() {
              console.log('2 this ', this);
            }
            anotherFunc();
          }
    };

    obj.sing();
    
 - [ ] What is a problem of copying objects, which have other objects or array inside them ? How to solve this problem ?
    
 - [ ] OOP. Principles.
    
 - [ ] Event loop, Event Emitter (Node.js)
    
 - [ ] ES5,6,8, how asynchronus operations are handled in JS
    


## React / Redux

 - [ ] What is React, his advantages and disadvanges ? 

 - [ ] Reconciliation. 
    
 - [ ] Virtual and Shadow DOMs, main ideas, difference
    
 - [ ] Why can`t browser read JSX ?
    
 - [ ] Class Components vs Functional Components
    
 - [ ] What is HOC?
  
 - [ ] useMemo, useCallback, useReducer, custom hooks
    
 - [ ] Redux, how it works ? immutability, async ways to use Redux 
    
## Node
    
 - [ ] What is node.js ?
    
 - [ ] Node.js Event loop
    
 - [ ] Streams in Node.js (Readable, Writable, Duplex, Transform)   
    
 - [ ] Rest API and Rest   
    
 - [ ] What is middleware ?  
    
 - [ ] What are the different types of HTTP requests?   
    
 - [ ] Task from Webstorm   
    
 - [ ] Databases. How indexes are created and how they can improve performance while getting info from db.
    
## General 
    
 - [ ] SOLID, DRY   
    
 - [ ] Calculate angle between clock wise at 3:15pm
    
 - [ ] Describe auth flow from front and backend sides  
   
    