Google - Software Engineer (Frontend) - Phone Screen
Description:
Level: L4 (Mid-Level Frontend Engineer)
Education: Bachelor’s in Computer Science
Years of Experience (YOE): 5
Questions Asked:
-
JavaScript/React Fundamentals:
- Why does a React component sometimes render twice in development mode?
- Explain the difference between
useEffectanduseLayoutEffect. - Implement a custom debounce function.
-
Data Structures/Algorithms:
-
Problem: Implement a function to find the maximum subarray sum (Kadane’s Algorithm).
- Example 1:
Input:[-2,1,-3,4,-1,2,1,-5,4]
Output:6
Explanation:[4,-1,2,1]has the largest sum = 6.
- Example 1:
-
-
System Design (Frontend Focused):
- Design a dashboard that displays paginated stock market data.
- How would you handle caching and re-fetching data efficiently?
- Walk through how you’d structure React components, manage state, and ensure scalability.
-
Debugging Exercise:
- Given a half-finished API integration with a React codebase and failing tests, debug the code until all tests pass.
- Use Chrome DevTools to inspect why API responses are not rendering correctly.