YOE: 5 years
Current Company: mid level startup
Recruiter reached out to me on linkedIn
Round 1: DSA Round [1 hr]
- https://leetcode.com/problems/find-the-winner-of-the-circular-game/description/ - solution in O(n) and O(1) space complexity was required
- https://leetcode.com/problems/maximum-sum-of-distinct-subarrays-with-length-k/description/
The interviewer asked me to code the solution on IDE of my choice.
Round 1: HLD + LLD [1 hr]
- I was tasked with designing and implementing a firewall system.
- Initially, I gathered the requirements: Source and destination IP ranges were specified.
- The primary task was to write a function to allow or disallow requests based on the source and destination IPs.
- I initially proposed storing the IP ranges in a hashmap, but this approach proved too costly in terms of time and space complexity.
- After reevaluating the problem from a pattern-matching perspective, I developed a solution that utilized a Trie.
- The interviewer asked me to implement the solution using a Trie.Initially, I maintained separate tries for source IPs and destination IPs, but this approach was also inefficient.
- Eventually, I combined the source and destination IP ranges into the same trie to streamline the process.
- I coded the solution and demonstrated its functionality through various examples.
Round 4: Director Round [in-person]
- I was asked to explain the architecture of one of my projects.
- Then he asked me to design Coursera like system
- The main problem we solved in building the system was enterprising licensing of few courses
- Needed to handle race conditions + locking
- Explained the architecture + database choices + CAP theorem in different scenarios
- Database Schema in detail
- APIs in detail
- Few behavorial questions in the end
Within two weeks got the offer letter