Wednesday, March 24, 2010

Interviews with Average Programmers

Books that interview luminous, high-profile programmers seem to be popular right now.  Titles like “Coders at Work“, and “Secrets of the Rockstar Programmers“  have interview-style formats in which various programmers generally regarded to be some of the best in the industry are asked questions about how they got their start, and where they think the industry is headed, etc.

Still, however, it’s impossible for me to read these books and not wonder how I would answer some of these questions myself even though the answers would only likely be worthy of an “Interviews with Mundanely Average Programmers” at best. Since such a book will never likely be written, I thought I would interview myself here for laughs.

Note that the following is intended to be taken as lighthearted and humorous. Any resemblance to anyone’s actual life or experience, including my own, is entirely coincidental (although I do own “Teach Yourself Java in 21 Days“).


Interviewer: How did you first get into programming?
me: Well, I was meeting with my Career Counselor one day to figure out what I should do with my EE degree.
Interviewer: Oh so you have a degree in Electrical Engineering?
me: Eh? No, ‘English Education’. So anyway, he had this problem with his computer — he couldn’t open an email attachment or something. Anyway, I somehow got it open for him, and he said I was pretty good at that, and that I should go into computers. So here I am.

Interviewer: Well, yes, many programmers don’t take the conventional route and get a CS degree. So tell me,what languages do you know and use regularly?
me: Oh, lots.
Interviewer: Specifically, can you name a few?

me: Sure. I’m most comfortable with Java 2 , but I also know Java 1.4, Java 5, even some Java 6. I know Java Swing and of course Java Collections pretty well. Some Java Servlets too.
Interviewer: Ok, those are all the same language. Do you know anything else besides Java?
me: Er lang–
Interviewer: Oh, Erlang, really? What have you done with Erlang?
me: No sorry, I was starting to say to myself, “Err, languages besides Java…”. I’ll have to think on it some more.

Interviewer: Ok, well let’s move on then. What’s the most complicated piece of code you’ve implemented?
me: Oh that’s easy. One time I had to sort a list of numbers, so I did a sort in one line.
Interviewer: Really!? You implemented a sorting algorithm in one line of code? That’s very impressive. Donald Knuth would be proud.
me: Who?
Interviewer: The father of modern computer science and the author of the seminal “The Art of Computer Programming” series.

me: Yeah well if he likes sorting, he should check out Java Collections, one of the languages I know. You can do a sort with just “Collections.sort()”, and then it sorts the collection you give it. Boom. Sorted. One line.
me: If you give me his email I can let him know where to find it–

me: Say, aren’t you going to ask me how I would move Mount Fuji? I have a pretty good answer, I think.
Interviewer: What? No, this isn’t a job interview.
me: It’s a trick question. You can’t move mountains. That’s the answer.
Interviewer: Well, I think that might be the point of the question.  I don’t think it has “an answer” . So anyway–

me: So I got it wrong then. Does this mean the interview is over?

Interviewer: No, I wasn’t — you asked yourself that question. Anyway, let’s keep this thing going. What are your thoughts on Pair Programming? Do you practice it often?

me: Absolutely not. I mean, don’t get me wrong, I don’t judge others for doing it. I mean, have I been tempted? Sure. But, I’m a happily married man and–
Interviewer: Ok, let me stop you there. I’m pretty sure we’re not talking about the same thing.  Let’s just skip a few of these questions here. Ok, here’s a safe one: What are some of your favorite tech books?

me: Oh, probably “Teach Yourself Java in 21 Days” stands out. It got me up to speed in my first language, Java 2, and very quickly too I might add. I actually read most of it in 20 days, so I figure I’m probably ahead of the curve somewhat. I’ve always scored pretty high on reading comprehension. I also have one of those books with a picture of an animal on the cover about XML. Oh! That’s what I was trying to remember from your ‘what languages do I know’ question! I know XML too.

Interviewer: I’m not sure XML is really a language–
me: Ok, sure, no problem. Just keep me down for Java Servlets then.  In fact, maybe count it twice. I know it pretty well.

Interviewer: Sure, well, I’m not keeping score. It was just meant to spark conversation. Well scanning down the rest of my questions here, I think I can anticipate most of your answers. So why don’t we just cut it short here. Thank you for taking the time to talk to me.
me: Did I get the job?
Interviewer: Once again, this wasn’t a job interview.
me: Dang. That always means “no”.

No comments:

Post a Comment