FreshWorks SSE Bangalore [Rejected]
Summary
Interviewed for the SSE role at FreshWorks in Bangalore. The interview process included three rounds, with the third round being the most challenging. The candidate was rejected due to poor performance in the third round, particularly with SQL queries and system design concepts.
Full Experience
I had applied in April, and the recruiter reached out to me in July when there was a vacancy. I wasn't very prepared but wanted to interview, so I went ahead. The interview process took place in August 2025.
Round 1 was conducted by an SSE with over 7 years of experience. It started with a basic introduction and then moved on to tree-related problems like maxDepth, leftView, and topView. I wrote the code on an online compiler, and the interviewer asked me to open and run it on LeetCode, which was a funny moment when I saw the solution cached and had to quickly erase it.
Round 2 was with an SSE having over 6 years of experience. It included an introduction, general questions about my current product, and follow-up queries on its workings. The main technical question was designing an LRU cache, which I discussed in detail, starting from the brute force approach and optimizing it. The interviewer was very friendly and helped me correct my mistakes during the coding process.
Round 3 was with a staff member having over 10 years of experience and lasted about 90 minutes. It started with a self-introduction and moved to explaining the high-level architecture of my current product. There were follow-up questions on my resume, including my experience with monitoring tools like Grafana, rate limiting, multithreading issues, and Redis. I also discussed my contribution to migrating to JDK17 and my work with Jenkins. However, the interview took a turn for the worse when I struggled with an SQL inner join query and had doubts about the database design for a feed and notification system in an application like Quora or Medium.
The interview ended with the recruiter providing feedback that the third round wasn't good, pointing out the issues the interviewer mentioned. The candidate felt that having thorough knowledge of the current project is crucial, and that chasing hard problems isn't necessary for FreshWorks. Preparation for common medium-level problems, good system design knowledge, and understanding the product/tech stack are more important.
Interview Questions (1)
Design an LRU (Least Recently Used) cache. The interviewer was very friendly and encouraged the candidate to speak out loud during the solution process. The candidate started with a brute force approach and then optimized it, discussing each part of the solution. The interviewer pointed out mistakes during the coding process and helped correct them.