# Frontend Interview Questions
> Pretext: Consists of questions around JavaScript, TypeScript, ReactJS, CSS, APIs, SEO
## Basics
- [ ] What is React, and how does it does stuff?
- [ ] How does ReactDOM renders app?
- [ ] How they like to structure the project?
- [ ] Which Frameworks they have used?
- [ ] How much are you in touch of current ecosystem?
- [ ] How much experience with Typescript?
- [ ] DIfficult react prob they have solved. How did you go and why difficult?
- [ ] Hooks - How does they work/When will you use them?
- [ ] useState
- [ ] useEffect
- [ ] useCallback
- [ ] useContext
- [ ] useMemo
- [ ] What's the concept of Memoization?
- [ ] Data Fetching
- [ ] Call API and fetch stuff
## Advances questions
- [ ] Synchronous and Asynchronous JavaScript
- [ ] How would you choose a Design Library, given that you know all of them?
- [ ] Eg. Q. How would you choose between Ant Design and Chakra UI?
- [ ] Bundle Size
- [ ] Design Management
- [ ] Do you know how to use these:
- [ ] Flex, Grid, responsiveness, font optimization, basic transitions
- [ ] Responsiveness
- [ ] Research on it and sort all your problems
- [ ] Should be able to make mobile flow
- [ ] SEO
- [ ] What is it?
- [ ] How can I add SEO in React or Next app?
- [ ] How I can improve the SEO?
- [ ] Even if I add the SEO, does it guarantees that Google will show it?
- [ ] Bundle Size
- [ ] How I can check the bundle size of a Package? - Webpack Bundle Analyzer (https://github.com/webpack-contrib/webpack-bundle-analyzer)
- [ ] How to investigate your bundle size in webpack - [Webpack](https://blog.saeloun.com/2020/08/04/how-to-investigate-your-build-size-in-webpack.html)
- [ ] Check the bundle size of a package. (https://bundlephobia.com/)
- [ ] Tree Shaking - done
- [ ] Web Performance
- [ ] How can I improve the performance of an App?
- [ ] Approach
- [ ] What are the metrics I would check to improve the performance?
- [ ] Session Auth and JWT
- [ ] Cookies and JWT - Difference - which is better?
- [ ] Object Oriented Approach
- [ ] Lazy Loading
- [ ] SSR: Server Side Rendering
- [ ] Watch on YT and read docs
- [ ] What is it? How does it work?
- [ ] IF WE aren't using Next but React, and I want SSR in it, is it possible to implement it?
- [ ] If YES, How can I?
- [ ] How is it implemented, technical aspects.
## Personal Management
- [ ] Ownership
- [ ] Personal complete management
- [ ] Team Communication
- [ ] Dedication - Giving your own efforts while making something, doesn’t matter if it’s small or big.