Summary
I recently interviewed with EY India for a Frontend Developer role, and this post details my experience and the technical questions from the first round.
Full Experience
I recently had my first-round interview with EY India for a Frontend Developer position. This round focused heavily on my frontend skills, particularly in React and JavaScript fundamentals, along with some general web concepts. I encountered a variety of questions ranging from theoretical definitions to pseudocode and output-based problems. It was a comprehensive assessment of my technical knowledge in these areas.
Interview Questions (23)
Explain what nested routes are and provide pseudocode for their syntax.
What is the syntax for the cleanup function in React's useEffect hook?
Explain the differences between React's useEffect hook and useLayoutEffect hook.
Explain the purpose and usage of React's useImperativeHandle hook.
Define what a Promise is in JavaScript and provide pseudocode for its syntax.
Explain the differences between Promise.allSettled() and Promise.race() in JavaScript.
Explain what the React Context API is and its use cases.
Define Web Components and their main concepts.
Explain the purpose of an <Outlet /> component, likely in the context of React Router.
Describe a method to automatically focus an input field when a React component or page renders for the first time, without relying on the onFocus JavaScript event.
Provide pseudocode demonstrating how to implement lazy loading, likely in the context of React components or images.
Explain the differences and use cases for React.memo and useMemo in React.
Write code (presumably JavaScript) to remove duplicate characters from a given string.
Write code (presumably JavaScript) to reverse the characters of each word in a given sentence, while maintaining the word order (e.g., "Hello World" becomes "olleH dlroW").
Describe your approach and the techniques you would use to call multiple APIs in parallel in a given scenario.
Explain the concept of the Event Loop in JavaScript.
Design or describe how to implement a system where an API endpoint changes dynamically based on user input for fetching results.
What will be the output of the following JavaScript code snippet?
console.log(a);
var a = 10;
function test() {
console.log(a);
var a = 20;
console.log(a);
}
test();
console.log(a);
What will be the output of the following JavaScript code snippet?
bar();
var bar = function() {
console.log('Hi');
};
Explain what Web Vitals are and their significance in web performance.
Explain the concept of React's Diffing Algorithm (or virtual DOM diffing).
Explain the differences between shallow copy and deep copy, particularly in the context of JavaScript objects.
Describe various methods to achieve a deep copy of an object in JavaScript.