Pinterest — Software Engineer ❌ Failed
Level: Senior-Level
Round: Full Journey · Type: Multiple Types · Difficulty: 7/10 · Duration: 360 min · Interviewer: Unfriendly
Topics: System Design, Concurrency, Behavioral Questions
Location: San Francisco Bay Area
Interview date: 2025-09-30
Got offer: False
Summary
Round 1: Phone Screen
Question: Elevator design problem. I completed two parts, but didn't have time for the third. I passed this round.
Round 2: System Design
Question: Designed an Ads event aggregation system. I received strong positive feedback.
Round 3: Coding
Question: LeetCode 322. I was not in a good state and missed a bug, failing one test case.
Round 4: System Design
Question: Designed a leaderboard to show the ranking of Post clicks for each category. I didn't explain the ranking part well.
Round 5: Coding
Question: A multi-threaded Delayed Queue problem. I wasn't prepared and couldn't solve it.
Round 6: Behavioral (BQ)
Question: General project and behavioral questions. The interviewer said I did well.
Details
Preparation Tips & Key Takeaways
What I Learned
- It's important to be prepared for concurrency problems, even if you don't use them frequently in your day-to-day work.
- Practice debugging under pressure, especially on problems that should be straightforward.
- Being able to clearly articulate the ranking logic in a system design is crucial.
Recommended Preparation
Coding Practice
- Practice dynamic programming problems.
- Focus on debugging skills, especially for common edge cases.
System Design
- Study event aggregation techniques.
- Review ranking algorithms and their implementation.
Concurrency
- Practice multi-threading and concurrent data structures.
- Understand how to implement delayed queues in different languages.
Behavioral Questions
- Prepare STAR stories for project experiences.
- Practice articulating technical designs clearly.
Resources I Recommend
- LeetCode for coding practice.
- System design interview preparation courses.
- Books on concurrency and multi-threading.
Common Pitfalls to Avoid
- Neglecting to practice concurrency problems.
- Getting flustered when encountering bugs during coding interviews.
- Failing to clearly communicate design decisions.
LeetCode similar: LeetCode 322