Today, I’m going to conduct a mock interview with my friend. He’s more on the junior side, as he’s a newly graduated developer. So, here are the questions I’ve prepared:
React
- What do useState and useEffect do and how to use them?
- What are class and functional components?
- What is “key” prop and what is the benefit of using it in arrays of elements?
- Why do we use React?
- What is Redux and why do we use it?
- More: https://github.com/sudheerj/reactjs-interview-questions?tab=readme-ov-file
Javascript Fundamentals
- What is the difference between the “==” and “===” operators?
- What is the DOM?
- What is a self-invoking function? How does it differ from an arrow function and a regular function?
- What are Promises? How and why do we use Async/Await?
- What is the JavaScript event loop?
- More: https://www.interviewbit.com/javascript-interview-questions/
HTML & CSS
- What does size-boxing do?
- What is flex and grid layout? How do you use them?
- How do you make a responsive website?
- How do you use position ‘absolute’ and ‘fixed’?
- What are Bootstrap and Tailwind, and how do you use them?
Backend
- What is a REST API?
- How do you use JWT tokens?
- What is SQL injection, and how do you prevent it?
- How and when do you use “HAVING” in MySQL?
- What is a “transaction” in SQL, and when and why do you use it?
Algorithm & Data Structure
- What is a hashmap/map/dict, and why do we use it?
- What is a Set?
- When should we use try & catch?
- What is the Big O notation of Binary Search?
- What is Encapsulation?
Project Implementations
- How do you implement a card deck class?
- How do you build a dating site?
- How do you implement infinite scroll?
- How do you implement an analytics feature for a website?
- How do you implement a cache system?
Experience
- What are the reasons for a site’s slow loading? How can it be improved?
- What is dependency injection, and how is it used in unit testing?
- If a production site has a strange bug, what tactics do you use for debugging?
Open Topics
- Do you like Frontend or Backend more?
- Tell me about a recent project you’ve worked on.
- What new technologies are you interested in, and why?
- What technologies are you currently studying?
These questions should be tough. Compared to when I graduated, technology has grown rapidly and extensively nowadays, making it much more challenging for new developers. However, as always, the geeks will prevail.