Twilio | Software Engineer | L3 | Reject
Summary
I interviewed for a Software Engineer L3 role at Twilio (remote, India). I cleared the coding rounds but was rejected because of the high‑level design interview.
Full Experience
My Background:
- SDE2 at FAANG
- YOE: 5.5 years
- Position: SWE L3 at Twilio
- Location: India Remote (they only allow to work remotely from selected states in India)
- Compensation - Base: ~43–44 LPA + other standard components.
The Interview Breakdown
Round 1: Hiring Manager Round
- This was a conversational round. We primarily discussed my current work and past projects. The interviewer also asked a few quick, high-level system design questions to gauge my experience.
Round 2: Coding + Machine Coding
- Q1 : You have an array of people in a queue, and each person has a certain number of coins. Every second, the person at the front loses a coin. If they are out of coins, they leave; otherwise, they go to the back of the line. Given a target person's initial index (personI), find how many seconds it takes for them to run out of coins.
- Q2: We discussed the Snakes and Ladders game, and I was asked to code up a few core functions for it.
- Verdict: Went well. Solved both smoothly.
Round 3: Coding (DS & Algo)
- Q1 (LeetCode Medium): Don't remember the exact problem, but it was a standard medium that I solved using the two-pointer technique. All test cases passed.
- Q2 (LeetCode Hard - DP): This was a slight twist on LeetCode 1639: Number of Ways to Form a Target String Given a Dictionary. I got the general intuition and headed in the right DP direction, but couldn't fully code it out and pass all the test cases in time. In hindsight, my approach could have been cleaner.
Round 4: High-Level Design (HLD)
- The Task: Build an event store system. It needed to ingest events from multiple sources and store them idempotently. The interviewer provided specific write throughput and latency requirements.The Experience: The problem statement was vague at first, but I cleared it up with some clarifying questions. The interviewer drilled down on a few specific areas, like: "Why Kafka? Why not write directly to the DB?" and questioned why I used a couple of redundant columns in my database schema.
- Verdict: Average, i would rate 6-6.5 out of 10.
Final Verdict: Rejected Got the call from the recruiter. They mentioned the coding rounds were good, but the feedback from the HLD round is what ultimately led to the rejection
Interview Questions (1)
Queue Coin Depletion Problem
You have an array of people in a queue, and each person has a certain number of coins. Every second, the person at the front loses a coin. If they are out of coins, they leave; otherwise, they go to the back of the line. Given a target person's initial index (personI), determine how many seconds it takes for that person to run out of coins.