Round 1 (Virtual)
Several questions related to CS fundamentals, Java, DSA and HLD were asked.
1. There are two CSV files, you need to return the common rows in both files. Approached saying we can make some attribute or group of attributes as primary/ composite keys and then select common rows.
2. Some questions related to resume.
3. Search in a rotated sorted array. Wrote code.
4. Find maximum element in rotated sorted array. Approach only.
5. Multithreading in Java. An example code snippet. Used syncronised keyword.
6. Some SQL using aggregate functions and having+where clause written. Difference between having and where clause.
- Count click events per user per hour
- DATE_TRUNC('hour', timestamp)
- GROUP BY userId, hour
- HAVING COUNT(*) > 1
7. Kafka architecture.
8. Explain normalisation. Joins would increase latency, solution? - Gave approach saying can denormalise read frequent data and store in a cache.
Some questions I don't remember.
Round 2 (Virtual)
Similar round.
-
Sliding Window Maximum
- Given an unsorted array and window size K, find the maximum element in every contiguous window.
-
Sliding Window Maximum using Priority Queue
- Solve the same problem using a Priority Queue (Max Heap) instead of Deque.
-
Callback Service Design
- A service consumes messages from Kafka/RabbitMQ.
- Each message contains a customerId.
- Find the customer's callback URL and send the event to that URL.
-
Slow Customer API Problem
- One customer's callback API is slow or not responding.
- How do you prevent thread contention and ensure other customers are not affected?
-
Production Issue in Callback Service
- The system is already running in production.
- One customer's API is causing performance degradation.
- What is your debugging and mitigation approach?
-
Retry Strategy Problem
- Retries can overload an already unhealthy customer system.
- How do you retry safely without making the problem worse?
-
System Isolation Problem
- One customer should never be able to bring down the entire callback system.
- How would you design the system to guarantee isolation?
-
UI Aggregation Service Problem
- A page depends on multiple backend APIs.
- One API becomes slow or unavailable.
- How do you prevent the entire UI from getting stuck?
-
Kafka Consumer Group Rebalancing
- What is rebalancing in Kafka consumer groups?
- What rebalancing strategies are available?
-
Consumer Join Rebalancing Scenario
- What happens when a new consumer joins an existing consumer group?
- How does partition redistribution work?
-
Kafka Performance Tuning
- Important Producer configurations for high throughput.
- Important Consumer configurations for high throughput.
-
Employee Hierarchy Database Design
- Design a relational database schema for an employee hierarchy.
- Need to support fetching direct and indirect reportees.
-
Direct vs Indirect Reportees
- How would you distinguish direct reportees from indirect reportees in the schema?
-
Hierarchy Without Closure Table
- Closure table causes too much data duplication.
- How would you design the hierarchy without using a closure table?
-
Alternative Hierarchy Models
- What are the alternatives to Closure Table?
- Compare Adjacency List, Recursive CTE, Nested Set, Materialized Path, etc.
Round 3 (Gurugram in-office F2F)
Interviewer started with some resume points - how did you achieved this SQL optimisation - used indexing on attributes and batching of the write requests.
1. Give kth permutation of a sorted string. I gave naive approach using backtracking to generate all possible permutations, sort them and give kth. Couldn't explain the optimised approach even after given the permission to look up the solution online.
2. LRU cache design - just approach.
3. HLD of Whatsapp's online presence feature. Approached via L4 LB and websockets connection with Redis pub-sub (discussed naive approaches of polling and SSE as well).
Some other inter-personal questions were also asked.
Round 4 (Virtual)
This was HR round.
-
Career Growth Journey
- How have you grown professionally from your first day in the organization until today?
- What are the top two non-technical learnings that helped you grow in your career?
-
Handling Cross-Team Conflict (Developer vs QA)
- A QA team reports a major bug close to release timelines, but you believe the implementation is correct.
- How would you resolve the disagreement while maintaining both delivery timelines and product quality?
-
Handling Critical Feedback
- Your manager raises serious concerns during a code review.
- You have already reviewed, tested, and validated the code, and it appears to work correctly.
- How would you respond to the feedback and handle the situation professionally?
-
Personal Strengths / Work Style
- What strengths help you perform effectively in your role?
- How do you maintain control over your work, timelines, and deliverables? (The "stunning control" question.)
-
What is your notice period? How many days a week do you attend office currently? Current location?
Some other questions were asked which I don't remember.
Verdict: Selected