Gojek | SDE I | Pune / Bangalore | May 2022 [Result (Selected))]
Summary
I applied directly to Gojek and underwent a comprehensive interview process, including machine coding, multiple system design rounds, and a hiring manager discussion. I was ultimately selected for the SDE2 role but decided to decline the offer.
Full Experience
I applied for the SDE2 position at Gojek via their jobs portal. After a short while, I received a call from HR to schedule my first technical assessment.
Machine Coding Round
This round lasted 1.5 hours, with 1 hour dedicated to development and 0.5 hours for discussion. I was given a problem statement to develop a game using any programming language of my choice. The focus was heavily on my design approach, familiarity with programming constructs, and application of design patterns. I managed to complete the task in a fairly decent manner, and during the discussion, I openly acknowledged any shortcomings and explained my thought process behind the chosen approach over others. It was a healthy discussion.
Technical Round 1
This was a 1-hour discussion covering my past projects and the technologies I had worked with. The interviewer asked several 'why this over that' type questions, which felt like a test of my design knowledge and my ability to justify my decisions or adapt to better approaches. Eventually, a discussion about caching from my previous work led into a system design problem centered around it. I was asked to write basic functions to implement small parts of the overall problem. Although I felt I answered everything and completed the design problem, the feedback from HR indicated a 'no' from the interviewer. Consequently, another technical round was scheduled with a different team.
Technical Round 2
This 1-hour round began similarly to the first, with discussions on my past projects, technology choices, and problem-solving strategies. I was asked to explain one of my projects in depth, leading to a detailed discussion around it. Following this, I was given another design problem and asked to work on the High-Level Design (HLD) basic components, demonstrating how I would approach understanding the problem. The feedback from this interviewer was positive. When I asked for specific feedback, he mentioned that things went well without revealing the outcome directly.
Technical Round 3 / Hiring Manager Round
This round started with a normal introduction and an overview of my current work. Later, some culture fit questions were asked. It felt more like a casual discussion covering technologies and stacks I was familiar with, along with my past experiences, implicitly testing my competency to work effectively within a team.
Result: I was selected for the SDE2 position at Gojek, but I ultimately declined the offer.
Interview Questions (4)
Machine Coding: Game Development
Develop a game using any programming language of your choice. The focus was on the design, familiarity with programming constructs, and application of design patterns.
System Design: Caching
Based on my prior work experience involving caching, I was given a system design problem related to caching. I also had to implement basic functions for specific parts of the overall problem.
System Design: High-Level Design (HLD)
I was presented with a design problem and asked to outline the High-Level Design (HLD) components, demonstrating my process for understanding and breaking down the problem.
Behavioral & Culture Fit
I was asked culture fit questions and engaged in a casual discussion about my current work, technologies I'm familiar with, past experiences, and my ability to work in a team.
Preparation Tips
Gojek's interview process is notably knowledge-driven rather than purely practice-driven. They prioritize challenging candidates on their understanding of real-world development challenges and day-to-day work scenarios, rather than focusing solely on typical coding questions. This approach, which emphasizes practical application of knowledge, was something I particularly appreciated about their process.