Summary
I recently completed an interview round with Bytedance in Dubai, which included a project discussion on service deprecation, a coding challenge to find the longest substring with distinct elements, and an unexpected system design question about designing an Instagram feed, ultimately resulting in a rejection.
Full Experience
My interview with Bytedance in Dubai consisted of a single round. The first part involved a detailed project discussion where I explained my experience with service deprecation, specifically how I approached it using the strangler pattern within our system. Following this, I was given a coding problem: to find the longest substring with distinct elements, which I solved using a map-based sliding window approach. Unexpectedly, even though HR had informed me it would only be a coding interview, I also faced a System Design question to design an Instagram feed. Despite being unprepared, I attempted an approach for a feed displaying only 20 posts, focusing on fetching from top followers, sorting, and implementing caching at both the database and server levels with varying replacement strategies. Although the interviewer was very experienced, there were some communication gaps due to accents. Unfortunately, the verdict was a rejection.
Interview Questions (3)
The discussion revolved around my project experience, specifically how to deprecate a service. My latest project involved service deprecation, and I discussed the process thoroughly, explaining to the interviewer my approach, including the use of the 'strangler pattern', and how our system manages such transitions.
Find the longest substring within a given string that contains all distinct characters. I used a map to solve this problem.
Design the Instagram feed functionality. I was not prepared for a System Design interview, but I attempted an approach for a feed displaying only 20 posts. My idea involved fetching posts from the top 20 followers, sorting them, and implementing caching layers for both the database and server for frequently accessed latest posts. I also considered storing user posts on server caches with replacement policies (hourly/daily).