This was a Walmart hiring event. I had passed the phone interview before, and then this physical onsite had three rounds.
First round: system design, Ticket Master, done on a whiteboard. The interviewer was friendly and reminded me that I might not be following the process in the right order. You need to write the functional requirements, the non-functional requirements, then the model, the API, and only then draw the diagram.
Second round: behavioral.
A time you convinced people to do something without mandating it, and they were willing to follow your advice.
Using data to drive a big decision.
Experience fixing a production issue.
You found someone violating integrity/compliance — what would you do.
Third round: for the onsite, they give you a laptop to write an algorithm on, and you can actually run the test cases. A Two Sum variant — the array is unsorted, and if you run into the same i, return the smaller i; if i is the same, return the smaller j. But you really need to think through the conditions clearly before writing anything — I only started writing after we'd fully talked it through. After I finished, the interviewer asked how I'd do 3Sum — at that point he assumed duplicates were already removed. Just explaining it verbally was enough.
I think my biggest takeaway is this: a year ago, I never thought I'd be able to talk through a system design problem. But today, a year later, I can actually walk through all the logic and knowledge points in a system design interview. I didn't even practice that hard — I just watched some YouTube videos, and happened to come across this exact topic right before the interview. That's when I realized I really can talk through the whole thing.
To everyone still trying to land an offer — when something feels really hard to do well, remember that even if you can't do it right now, you'll definitely be able to do it after some time. Good luck, everyone.
Discussion
Loading comments…