Yahoo Software Engineer Interview Questions
4+ questions from real Yahoo Software Engineer interviews, reported by candidates.
Round Types
Top Topics
Questions
Yahoo Software Engineer Online Coding Challenge Experience
/* We need to write a query api to a mail storage system. For practical reasons, we want to define some method that takes some sort of query structure (input) that supports our use cases listed below,
## Round 1 - Coding **Format:** Phone screen followed by a HackerRank OA (90 min, 2 coding problems). **Q1:** String manipulation — parse a serialized config string of `key=value` pairs separated by `&`; return a dictionary. Handle duplicate keys by keeping the last value. **Q2:** Array problem — given a sorted array and a target sum, find all unique pairs that sum to the target. Return pairs sorted by first element. ## Round 2 - Behavioral - Walk me through a project where you had to learn something new quickly. - Describe a conflict with a teammate. How did you resolve it? - Why Yahoo? What excites you about this team's product area? ## Follow-ups (technical) 1. In Q1, if values can themselves contain `=`, how do you parse safely? 2. In Q2, what is your time and space complexity? Can you do it in O(1) extra space? 3. How would Q2 change if the array were unsorted? 4. How would you test your config parser against malformed input? **Tips:** OA difficulty was easy-medium. Behavioral round was conversational. Turnaround from OA to decision was approximately 2 weeks.
## Round 1 - Coding **Frontend component:** Build a filterable list component in React. Given an array of items `[{id, name, category}]`, render a dropdown to filter by category and a text input to search by name. Results update live. ```jsx function FilterableList({ items }) { // items: [{id: number, name: string, category: string}] // render: category dropdown + name search + filtered list } ``` **Example:** ``` Items: [{id:1,name:"Dog",category:"Animal"},{id:2,name:"Car",category:"Vehicle"},...] User selects category="Animal", types "do" -> shows only Dog. ``` ## Round 2 - System Design Design a URL shortener (like bit.ly). - API design: POST /shorten, GET /:code - Storage schema and choice of DB - Handling 10K writes/sec and 100K reads/sec - Expiry and analytics ## Follow-ups 1. In the React component, how do you avoid excessive re-renders on every keystroke? 2. How would you handle 100M stored URLs — does your schema still work? 3. What happens if two users shorten the same long URL simultaneously? 4. How would you add click-count tracking without slowing down redirects?
## Round 1 - Coding **Format:** 45-minute phone screen with a shared code editor. Two problems, difficulty easy to medium. **Q1:** Given a string, find the length of the longest substring without repeating characters. ```python def length_of_longest_substring(s: str) -> int: pass ``` **Example:** ``` Input: "abcabcbb" Output: 3 ("abc") Input: "bbbbb" Output: 1 ("b") ``` **Q2:** Given a binary tree, return the level-order traversal as a list of lists. ```python def level_order(root: TreeNode) -> list[list[int]]: pass ``` **Example:** ``` Input: root = [3,9,20,null,null,15,7] Output: [[3],[9,20],[15,7]] ``` ## Follow-ups 1. For Q1: what is the time complexity of your sliding window approach? Can you reduce space usage? 2. For Q1: how would you handle Unicode characters vs. ASCII-only? 3. For Q2: how would you do a right-side view (only rightmost node per level)? 4. For Q2: how would you do a zigzag (left-to-right, then right-to-left alternating) traversal?
See All 4 Yahoo Software Engineer Questions
Full question text, answer context, and frequency data for subscribers.
Get Access