Pinterest — Software Engineer ❌ Failed
Level: Senior-Level
Round: Onsite · Type: Multiple Types · Difficulty: 6/10 · Duration: 240 min · Interviewer: Neutral
Topics: Depth-First Search, System Design, Distributed Systems
Location: San Francisco Bay Area
Interview date: 2025-12-16
Got offer: False
Summary
Round 1: Coding
Question: Implement a robot cleaner with DFS. The robot can move in eight directions (up, down, left, right, and diagonals). Three sub-questions involved returning the valid moves: 1) mark all reachable positions, 2) with one obstacle, 3) with two robots.
Round 2: Coding
Question: A difficult escape room puzzle.
Round 3: System Design
Question: Design an Inventory Management System. I don't recall the specifics.
Round 4: System Design
Question: Design an ads event reporting system to aggregate user behavior and partition by user groups.
Details
Preparation Tips & Key Takeaways
What I Learned
- I need to improve my understanding of DFS and its applications.
- System design questions require a solid understanding of distributed systems and data aggregation.
Recommended Preparation
Coding Practice
- Practice DFS problems on platforms like LeetCode.
- Focus on problems with multiple constraints and edge cases.
System Design
- Study common system design patterns like sharding and aggregation.
- Review different database technologies for storing and analyzing large datasets.
Behavioral Questions
- Prepare STAR stories for projects involving problem-solving and system design.
- Practice explaining my approach to system design questions and the trade-offs involved.
Resources I Recommend
- Grokking the System Design Interview
- LeetCode for coding practice
Common Pitfalls to Avoid
- Not considering all possible edge cases in coding questions.
- Failing to explain my design choices and the trade-offs involved.