I met with Wolverine at a career fair, and applied by giving them my resume. I was offered a phone interview first. This interview covered the really basic technical questions (C++), but lasted a while. Things like class vs. object, initializer lists, pointers vs. references, pointer vs. reference parameters, overloading vs. overriding. Obviously you should feel pretty solid in your understanding of these concepts for any interview for a C++ job. At the end of the interview, he already told me I would be interviewed on site in Chicago.
When I arrived on site for the interview, I ended up meeting with the three different development teams throughout the day. Each one was technical and involved writing some code on paper. It was a little awkward for an interview as they did not ask me to explain as I wrote, just to explain afterward. I find most employers prefer you "think aloud", so I'm actually used to that now.
The first interview was for the WORMS team and they told me about the team and what they do. Then I was asked to write code to find the largest palindrome number which is the product of two N digit numbers. my initial attempt was not optimal and also I showed that it was incorrect. I worked with the developer on fixing my mistakes and then optimizing. He really helped point out what was wrong while I tried to come up with solutions.
The next interviewer did not tell me much about the the team. They asked me to write code to reverse a string in place (easy, simple swap). Then to find the middle node of a linked list. I took an approach of using two iterators. It's really not too hard when you think about it.
The final interviewer was from the market data team. They talked to me about networking (TCP vs. UDP) although I said I had not had any networking experience yet. I was asked the difference between a heap and a balanced binary tree. Then I had to write code to find the max depth of a binary tree.
I had lunch with two developers. Just talked a little with them (not really part of the interview). We ate at the company cafeteria. It wasn't bad but they said it was a bad day. Still, they do provide free breakfast/lunch which is nice.
Finally, I met with the same developer again and was given a problem printed out. He had me type up a solution in notepad and left me to do it for 45 minutes. He said they would look over it after. After that, he just came back, asked if I had any questions and walked me out.
In retrospect, I REALLY wish I had asked for a tour at the end of the interview. I got to see very little of the office space and I would have liked to see some of that before I left. Also, I felt that the interviews were a little disorganized compared to other companies, in that I had no idea who I would meet with next each time. I spent the whole day (except lunch) in one conference room and people would just come in, interview, and leave, telling me the next person would be in shortly. It was a little weird, but everyone was really nice.