I had two phone interviews and failed the second one. Both interviews used a collaborative text editor for code-related questions.
The first interview covered a range of topics.
The next topic was functional programming.
I was asked about tail recursion and tail calls in general.
Then, I had to write a function returning all permutations of a list (again, in a language of my choice).
I was asked if I knew what memoization is and had to write a function that returned a memoized version of a passed-in function. We then discussed the problems with my implementation: the cache I used would grow larger whenever the function was called with new elements.
There is a company, modelled as a tree of employees and the people reporting to them. Every employee has a fun value. At a party, every employee only has fun if his direct boss is not at the party. Otherwise, he adds fun corresponding to his fun value to the party. Write code to find the maximum total fun that can be had at the party.
The following metrics were computed from 156 interview experiences for the Jane Street Software Engineer role.
Jane Street's interview process for their Software Engineer roles is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Jane Street's Software Engineer interview process.