ShareChat SDE-1 Interview Experience | Offer Received 🎯 | DSA + LLD + HLD 🚀

sharechat logo
sharechat
sde-1Offer
March 3, 20253 reads

Summary

I successfully navigated the SDE-1 interview process at ShareChat, securing an offer after three intense rounds covering DSA, LLD, and HLD, all completed efficiently within three days.

Full Experience

My ShareChat SDE-1 Interview Experience

My journey at ShareChat for the SDE-1 role began with an outreach from a Talent Acquisition representative, followed by an Online Assessment (OA). The OA comprised three coding questions: a Sliding Window problem, a Binary Search problem, and a slightly harder N-ary Tree DP problem. I successfully solved all three, which moved me to the next stage.

Round 1: Data Structures & Algorithms (DSA) – Coding Round

This round deeply focused on my problem-solving and coding abilities. The interviewer presented two questions. The first was the Meeting Rooms problem, which I tackled using the Line Sweep Algorithm. For the second, Generate Valid Parentheses, I employed a somewhat unconventional approach involving bitmasking, where I generated all subsets of a bitmask and then validated each one. I received positive feedback from this round, advancing to the next.

Round 2: System Design (LLD) – Technical Lead

The second round, led by a Technical Lead, started with a discussion about my current experience. The core challenge was to Design Splitwise, an expense-sharing application. I was given about 40 minutes and an IDE to code. I focused on designing an extensible architecture and effectively explained my design choices and trade-offs. I even identified and suggested a better design during the interview, showcasing my critical thinking. Although I exceeded the time limit and couldn’t complete a fully working implementation, I walked the interviewer through my thought process and proposed improvements. I was initially unsure about the outcome, but later that evening, HR informed me of positive feedback, moving me to the Hiring Manager round.

Round 3: Hiring Manager (HM) – High-Level Design (HLD) + Discussion

The final round, with the Hiring Manager, began with a general discussion about my experience and past projects. The main problem was to Design a Coupon Service for an E-commerce Platform. I made sure to clarify requirements effectively before diving into the design. I outlined the REST APIs and the database schema for the system, and actively discussed scalability, optimizations, and trade-offs. This round also concluded with positive feedback.

Offer & Final Thoughts

I was thrilled to receive an offer within just one day after the HM round! I truly appreciated the well-structured and efficient process, which was completed in just three days. The interviewers were great, providing constructive feedback and being open to discussing different approaches. It was also a fair evaluation; even though I couldn’t complete the full code in the LLD round, my approach and design thinking were valued more. I ultimately resigned after 10 days to accept an offer from LinkedIn, but my experience with ShareChat was very positive.

Interview Questions (4)

Q1
Meeting Rooms
Data Structures & Algorithms

Given an array of meeting time intervals consisting of start and end times, determine if a person could attend all meetings. I was asked to solve this problem.

Q2
Generate Valid Parentheses
Data Structures & Algorithms

Given 'n' pairs of parentheses, write a function to generate all combinations of well-formed parentheses. This was the second problem presented.

Q3
Design Splitwise
System Design

I was tasked with designing an expense-sharing application similar to Splitwise. I was allowed to use an IDE for approximately 40 minutes to code. I focused on designing an extensible architecture.

Q4
Design Coupon Service
System Design

The HLD problem given was to Design a Coupon Service for an E-commerce Platform. I was expected to clarify requirements, design APIs, database schema, and discuss scalability.

Preparation Tips

Based on my experience, I'd strongly recommend future candidates:

  • Brush up on core Data Structures & Algorithms topics, specifically focusing on sliding window, binary search, and dynamic programming on trees.
  • Practice Low-Level Design (LLD) problems, such as Splitwise or Parking Lot, with an emphasis on writing clean, modular, and extensible code.
  • Prepare thoroughly for High-Level Design (HLD) discussions, concentrating on defining APIs, designing database schemas, and considering scalability and optimization aspects.
  • Crucially, remember that communication is key. Even if you cannot finish the code or perfect a design, clearly articulating your thought process, design choices, and trade-offs can significantly impact the outcome.
Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!