1st Interaction - Chat with Recruiter about the role and what relevant experiences I might’ve for this role 1st Interview Round - Video Call with Engineering Manager where she asked questions about me, how I work and my experiences. 2nd Interview Round - Online whiteboard coding test with two engineers. They gave me a sample schema related to rating shoes on Strava and I had to write pseudo code for two functions around that feature using given schema. This included two functions, one for adding rating to a shoe and second one for fetching the best average rated shoe. Further improvements to fetching the best shoe were also discussed where I told them about the things which I would add to the schema to make the suggestions more accurate. Onsite Day - 3 interviews and 2 non-interview chats 1st chat with a probable teammate about the working of the team. They had given me ample time to ask any questions related to Strava and their work. 3rd Interview Round - Online troubleshooting exercise with two engineers. They provided me with a broken apache installation on a ubuntu server with zero storage left. And I had to get the apache site running on it. This was a collaborative round where we were talking to each other in a way like one would in real pair programming environments. I was also allowed to google anything for helping with the troubleshooting. 4th Interview Round - Online systems design exercise with one engineer. I had to write up a query to get a feed of followers’ activities on Strava. They had provided me with a sample db schema and I was allowed to make keys/indexes on it to make the query faster. After writing up the query, I was asked questions on how to make this query faster and what would be the bottlenecks for this query. After discussing that, we zoomed out a little bit and talked about scaling this query to the scale of Strava with additional infrastructure around it. Interviewer was really happy with the final result and he mentioned that it looks very similar to what is actually implemented at Strava. 5th Interview Round - This was a behavioural interview round with the Engineering Manager from the 1st round where she asked me in detail about my past experiences and how I handle different situations. Final chat with HR & wrap-up - She discussed the benefits and salary. In all these rounds, I was given ample time to ask questions and be comfortable with the interviewer##. I was getting positive vibes from interviewers and the recruiter throughout the process. But in the end, it didn’t really matter because they called me a week later after last round and told me that they are going for a different candidate. Unfortunately they had only position open for this role and I missed out on that. I asked the recruiter for detailed feedback and reasons for not choosing me but she just mentioned that the manager preferred the other candidate. I think that me requiring sponsorship of a work permit and the 3 month delay in that process might’ve played part in that decision. Anyways, no harm no foul. Life goes on. #interview
Thanks for the details