Phone Screen
??. Steve Yegge's phone screen + a question on recursion/pointers

Behavioral
??. On a scale of 1- 10, how lucky do you think you are? Why?
??. What was your greatest failure? Shows the size of their ambition (one’s failures are proportionate to ambition), how much they reflected on the failure, what they learnt, and how much they cared (how hard do they still wince?) ??. What is the hardest technical problem you've encountered and what did you do to try to resolve it? ??. I'm going to say the beginnings of three sentences. I want you to complete them with the first word that comes to mind. Reference Check
??. What would you rate $$PERSON$$ from 1 to 10? What could they do to get the remaining $$10 - RATING$$ points?
??. What do we need to do to set them up for success? (tactical) ht @provisionalidea
??. Where did they show the most growth? (before, after, what did that growth look like) ht @provisionalidea
??. What was their approach to resolving conflicts (get an example) ht @provisionalidea
??. What was their biggest accomplishment in the role (be precise) ht @provisionalidea

Technical Questions
??. Debug something small
??. Paginate an input string into separate text messages of max N characters
??. Design a permissioning system for a web app with users and groups and items.
??. Implement a hash map
??. Implement malloc
??. Implement diff
??. Merging in version control / Google Docs. CRDTs.
??. Implement a regular expression parser that supports "." and "*"
??. What happens when you type "google.com" into your web browser
??. Design a persistent stack. It maintains a version counter which starts at 0. On every push or pop operation, version is incremented by 1. Expected time complexity:
  1. Push, Pop - O(1)
  2. Print - O(Number of elements in given version)
??. Copying a file to a large number of destinations through a slow link. At ITA, the file was the airlines' seat availability record, that really indicated which price points on each flight could be offered for sale right then.
??. Return the names of the k% of objects with highest numerical field. Example input:

Results = [ { "name" : "abc", "numerical_field" : "1234" , "name" : "cde", "numerical_field" : "5432" } ]; k = 50;
Example output: "cde"

How could you optimize memory consumption?

??. (H) Merge k sorted lists
??. (M) Return the number of numbers from 1 to N that have 7 as a digit
Meme Question
??. You want to cross a 1mi bridge in 1 min. You've crossed half the bridge at 30MPH. How fast will you need to drive to cross the rest of the bridge?