I thought to myself, "Self, it would be cool to document what interview questions you've been asked. For posterity or future interview-prepping or something." So, here's what I remember of my interview at Intuit.
(Interestingly, Forrest and I had the exact same three people interview us. Most likely because we were both interviewing for the Software Engineer position. And when we compared notes, it turns out that the people asked us variant questions, or, in the technical skills, different subsets. Forrest's resume mentioned his database experience, so he got some of those tech questions; I haven't done much DB work and didn't claim to, so she didn't even bring up the subject with me.)
Leadership & Team Skills
The first person I talked to, Paul of Payroll, was the "touchy-feely" guy (his words). He didn't ask me technical questions, but instead wanted to see what kind of leadership and team skills I had. His questions were more invitations to stories that demonstrated my abilities.
- Tell me about a time that you took initiative on a team project.
- Tell me about a time when you had some conflict with a team member. How did you resolve it?
- How do you deal with things like relocating to a new area? How do you deal with being new to a team?
The next person I talked to, Arun the Architect, wanted me to discuss the design decisions and structure of some complex project I'd done at school or during an internship. Alas, the last truly complex project I worked on was two years ago, so I really don't remember the interfaces and inheritance hierarchies used.
I did remember a simpler project, so I went with that since I figured it would be better to talk about a simple project concretely than to talk about a complex project vaguely. It's no fun trying to describe a system while you're actively dredging up details at the same time. The describing goes faster than the remembering, and you end up stuck saying, "And I don't remember what happens next in the story of this design."
He asked me for a different example, and I asked him to clarify that the problem with my first example was its simplicity. I don't quite remember the next question or two, but then we changed subjects and discussed what subfield I was looking to get into. I told him I didn't want to be pigeonholed into one specialty yet, because I felt there were still areas I wanted to explore before settling on one. He seemed content with that answer.
- Tell me about a system you designed.
- In what area of software engineering to you see yourself in five years?
Object-Oriented Programming Skills
The last person I talked to, Bindu the Senior Software Engineer, focused on explicitly technical questions. However, I thought her questions were pretty straight-forward -- this considering the fact that I haven't actually used C++ in about two years.
The only one I didn't know was the applet question, but then I was very upfront with her and explained that I hadn't worked with applets before. The answer she was looking for involved the security differences between them and what access they had to the host computer running the program. I'm sure that if she'd prompted me with a question about security differences between applets and applications, I would have realized what she was looking for. But with the open-ended way she'd phrased it, I got blocked thinking, "Ack, I don't do applets!" Oh well. I got all the rest of her questions easily, so I think I did pretty well overall.
- What methods do you get automatically in a C++ object?
- What is a virtual function?
- What is a pure virtual function?
- What is a virtual destructor, and when would you want to use it?
- What does it mean to have a static field? A static method?
- What does it mean to have a final field? A final method? A final class?
- What is the difference between an abstract class and an interface?
- What is multiple inheritance and why should you avoi-- use it sparingly?
- Is the return type part of a method signature?
- What is the difference between a Java applet and an application?
Compared to Microsoft's technical questions, Intuit was easy. We were told to
expect a phone call or email within the next two weeks to find out whether
we're getting any employment offers. Waiting!