SIG Interview Experience
Summary
I completed a phone screen that included a CodeSignal movie‑search optimization, a trie‑based ticker extraction problem, and an OOP cash‑register design, followed by a behavioral onsite interview.
Full Experience
Spring 2026
Phone Screen
- This was a CodeSignal you could do in a few different languages. The code was reading in a CSV file of movies and exposing a search method that allowed searching based on genre and a year range. It started with a naive O(N) search. You are given 30 minutes to optimize the code. Use hashmaps to index the movies based on genre and year window.
Phone Screen 2
- This is a trie question. Be able to implement a trie quickly (leetcode problems like WordSearch are good to prepare). Basically given a list of headlines and company‑>ticker pairs, you need to load the names into a trie with tickers at the terminal nodes and fetch all of the tickers you can find. Important: need to be able to find all of the tickers in a string. For example, say "Big global company" and "global" both have valid tickers then the headline "Big global company does the thing" needs to return both.
- Then an OOP design question. Cash Register with printed receipt
Onsite
- Was a resume/fit interview. Have stories and behavioral answers ready.
Interview Questions (3)
Movie Search Optimization
Read a CSV file of movies and implement a search method that filters movies by genre and a year range. The initial solution performs a naive O(N) scan. Optimize the solution to run faster, using hashmaps to index movies by genre and year windows.
Trie Ticker Extraction
Implement a trie that stores company‑>ticker pairs at terminal nodes. Given a headline string, fetch all tickers whose associated company names appear anywhere in the headline. For example, if "Big global company" and "global" both have valid tickers, the headline "Big global company does the thing" should return both tickers.
Cash Register OOP Design
Design an object‑oriented cash register system that processes transactions and prints a receipt. The design should cover classes, responsibilities, and interactions needed to handle typical purchase flows.