views:

1869

answers:

24

I have just completed my Master's degree in Computer Science and have gotten my first job interview as a developer. I do not have much experience in large scale development projects, but I am hoping my university education counts for something.

I am wondering, what materials should I bring that would impress my interviewers? What do most interviewers expect, especially from a new graduate?

**Edit:

The job interview went OK, except I forgot my pants.

Thanks for all the great advice!

+1  A: 

Take some sample code from projects you've worked on and are proud of.

This code should show how you've solved some sort of problem or how you were able to overcome obstacles during development.

John Boker
Assuming those projects were work-related you may be in violation of your employment contract by doing this.
cletus
Why is this being downvoted?
BobbyShaftoe
@cletus: The OP said that it's his first interview, and he's just out of college, so it's safe to assume he doesn't have work-related projects.
Hosam Aly
Don't know about that. With all the hoo-ha about universities owning the code you do while there, you may still be in legal trouble.
paxdiablo
Forget code written at university/work. If the code was written in your own time (as part of opens source/hobby) and is of decent quality, I'm tipping that would be a a very positive thing to most interviewers.
Ash
The answer is being downvoted because code that can be read is simply too trivial. Anything that has value as a demonstration of your ability will be complex enough such that an interview simply won't be an appropriate timeframe.
cletus
+1, it's not just about reading the code, it's how the person talks about it, design issues, the thought process used to create the code. Unfortunately with the low standard of programming in general, even showing decent "trivial" code will demonstrate you are above average.
Ash
Interviewers looking for code will ask for it in advance or will have you write pieces during the interview. Bringing arbitrary samples expecting to walk through it with the interviewer will feel very rehearsed and doesn't show that you can communicate ideas without code effectively.
Ron Warholic
Not all inteviewers looking for code will ask for it in advance. Bringing code with you is no less rehearsed then performing some stock standard coding problem. We are talking about "Programming positions" here, if you can't code, I couldn't care how good a communicator you are.
Ash
It's easy to determine if someone can code during an interview. Have them write a 20-30 line function and describe their thought process during it. Bringing a 100+ line code listing that the interviewer has to interpret doesn't give much insight into how you think in programming terms.
Ron Warholic
+3  A: 

A calm mind and open heart.

ewakened
+10  A: 

A notepad! Think of some questions/concerns ahead of time, and take some notes when they describe the job to you.

devin
I think Steven A Lowe may be having a poke at you with his "and pen" comment :-)
paxdiablo
yes, i am - could not resist!
Steven A. Lowe
This helped land me my job - the preparation, that is. I did all phone interviews, but my interviewers were impressed that I had prepared ahead of time with questions I wanted to ask them.
Erik Forbes
I second this. Put them in difficulty!!!
Andrei Rinea
+15  A: 

Calm and confidence. Don't bring any code, I can tell you that based on my experience in interviewing others.

If you can't talk confidently about what you've achieved, code's just going to get in the way.

In fact, don't bring any external materials unless asked (except something for writing down details). Just show up, answer questions honestly, show a passion (or at least an interest) for the sort of work you're interviewing for, and I believe you're 80% of the way there.

paxdiablo
I agree that one shouldn't bring code unless its worth showing and you can defend it. With that in mind: if they can show code and explain why they did what they did, it would impress me more than vague descriptions about systems they've worked on.
Richard Levasseur
I think not (but I may be wrong). Many will always try to impress you with the elite coding skills when coding is a small proportion of what you need. Being able to fit into a team and socialize, put forward and defend points of view and so on is just as important IMO...
paxdiablo
I don't want to have to pore over source listings as you explain why your new algorithm is the best. Explain to me - that proves you understand the algorithm and its competitors *and* you're confident enough to slot into a team successfully.
paxdiablo
If an interviewer wants to see your portfolio, they will ask you to bring it.
paxdiablo
@Pax, it's not so black and white. As Joel/ and Jeff have said "if you're hiring someone to write code, you might want to know that they actually can code". As has been discussed broadly of late, there are too many programmers who struggle with even the basics.
Ash
You don't need to see their code to tell if they can code, and bringing in a piece of code doesn't guarantee they wrote it. And before you say you can catch them out at that, you can do that equally well without code. Interviews should cover a wide range of skills of which coding is one.
paxdiablo
And, with sincere apologies to Jeff and Joel, they're just a couple of guys. Granted they're relatively successful but they're not Gods (or better yet, Knuth :-). I've read most of Joels articles and there's a lot of good ones in there but I have disagreed with a few.
paxdiablo
@Pax, fair points, it sounds like you've done more interviewing then me and so see it from the other side. In my answer I've said that you could bring code regardless of being asked or not, in the chance that the interviewer would be interested in seeing, but don't force it on them.
Ash
Fair enough on your "bring, show if asked" comment. I suspect I've done less than Joel though (17 hires from memory, with more interviews than I can remember (the brain blocks all the pain after a while)).
paxdiablo
Pax, you are right on the money with calm and confidence. I would add one more, although, it might be implied, but having communication skills. The ability to articulate your thoughts is one of the most valuable skill one can have.
Chuck Conway
+1 seconded on the communication skills. Being able to express complex ideas succinctly and effectively is what makes a developer especially valuable.
Ron Warholic
+42  A: 

A notepad and pen are good, but bring some humility and enthusiasm - that will impress the interviewer the most ;-)

And pants - remember to wear pants.

Steven A. Lowe
man, the pants tip is gold dust, I _wish_ someone had told me that 5 years ago...
ninesided
+1 for the pants! "No, you put on YOUR pants!"
AviD
+1 for the pants tip! Great advice! ;-)
Zaagmans
+1, I hadn't thought about the pants tip until you suggested it, but after thinking about it I agree... you should wear pants.
Simucal
I forgot the pants once and got the job on the spot.
WOPR
The Pursuit of Happyness quote, "What would you say if man walked in here with no shirt, and I hired him? What would you say?", "He must have had on some really nice pants. "
Simucal
So that kind of works out, except we need to flip-flop pants with shirt.
Simucal
What about skirts? After all 'ddrum' might be a girl... (+1)
EricSchaefer
@[EricSchaefer]: ddrum also might not be a girl, best not to risk it!
Steven A. Lowe
A: 

Frankly, I would suggest taking nothing at all. It won't affect the interviewer's opinion of you at all if you turn up with nothing. - My opinion from experience

If you must take something to an interview, take some CDs of projects you have worked on in the past for the interviewers to look at later.

Nick Grubb
+4  A: 
  • Your resume

  • Perhaps a laptop with some work on it that you may demonstrate if the conversation ever comes up.

  • A shortlist of links of pages you might have contributed to, if applicable

  • Energy.. its amazing how many people I interviewed with no energy/motivation whatsoever..

  • I don't say you should take it with you to impress anyone, but don't be afraid to have something non-interview-related with you, like a newspaper if its something you usually have.

Whatever you take with you, take it in an organized fashion, just proving you are organized with the stuff you carry with you gives out a few + points

Ric Tokyo
+1 for the resume, and especially the energy.
AviD
+3  A: 

I agree with the others, don't burden yourself with anything except maybe a small notepad. Maybe a book to read because you might be left sitting around waiting. Just show up, be confident, answer questions honestly. You might want to bring a cheat sheet of questions to ask them about what the job will be like, if that sort of thing helps you. Remember, you're interviewing them as much as they're interviewing you. Worry more about meeting and getting along with the people then being grilled about technical questions.

I disagree about code. Don't bring code, but make sure they already have a sample of your code on some real project. Make sure it's code you're allowed to show people, so no code from a previous job. Open Source code from a real project is ideal. Realistic code samples answer a lot of questions about what sort of programmer you're going to be, and it shows you're not just a 9-to-5 programmer. That you're going to expand your skills outside of work.

You should spend most of your time preparing by investigating the company, what they do and how they do it. Bone up on whatever it is they do so you're not completely blind sided, even if it's just reading a few Wikipedia articles. This will also let you show honest interest and ask more questions, which is good.

Finally, get a good night's sleep, eat a good meal before hand, err on the side of being early, go to the bathroom before heading in, and turn off your cell phone.

Schwern
+1  A: 

Bring one printed copy of your resume for each person you'll be interviewing with, plus another copy for yourself. Chances are, they've already printed and distributed your resume, but it never hurts to have a few extra copies handy. I once had an interviewer ask for a copy of my resume, and I had to say "Sorry, I didn't bring it." I felt like an idiot and never repeated that mistake.

Other than that, bring a pad of paper and a pen. Sometimes, interviews will be conducted in rooms without whiteboards, and sometimes you just need to draw a quick diagram to explain an idea. If you have paper and a pen, you're golden.

Things to NOT bring: cell phone, laptop, sample code (brief rant: I wish it was acceptable in the industry to bring sample code; I hate writing whiteboard code, but I have thousands upon thousands of lines of code in my personal portfolio that I'd be proud to show).

If possible, I also try to keep my pockets completely empty. I leave my wallet in the car, and I remove my car key from its usual keyring, carrying only the single key. For some reason, having stuff in my pockets is a distraction during an interview, so I prefer to travel light.

benjismith
I thought you were going to say you left your wallet in the car in case the interviewers decided to mug you :-)
paxdiablo
+0.25 for each of those: Printed CV, paper and pen, no cellphone, and thinking to take the carkeys before closing the car.
Treb
A: 

Just knowledge and nothing else.

Although maybe a cool gadget will make a slightly better impression in interviewers eyes but I wouldn't count on that.

No one is going to look at the code, they won't be sure it's you who wrote it anyway. And they will have paper and pen ready for you, that's for sure.

vava
+3  A: 

Breath mints, nothing ruins first impressions more than gagging when a candidate speaks first to you!

ninesided
A: 

From my experience hiring coders:

  • Be ready to undergo a coding test
  • Wear a suit that fits!
Chris KL
suit? Just wear normal clothes. Wearing something you wont wear when programming then your doing it wrong!
PoweRoy
@PoweRoy: For many HR people, not wearing a suit is a definite no hire. Wear a suit, absolutely.
Treb
I'd say wear the equivalent clothing to the people interviewing you. I once had an interview where the 2 guys interviewing me were wearing shorts and t-shirt and no shoes. I was way overdressed for that interview ;-)
csjohnst
A: 

Bringing along code (of some form) that you consider "good code" and then being able to explain clearly why you think it is good, is one of the best ways to prove and demonstrate that you are passionate about your work and are willing to stand by it.

This may be code you worked on yourself or could actually be open souce code for example that you happen to admire for certain aspects.

Of course many companies will not specifically request code at an interview, that doesn't mean you can't have it with you anyway. Some interviewers might not even think to ask, but would be interested in seeing it anyway. Offer it, but just don't force it on the interviewer if there is little interest.

As Joel and Jeff have spoken about on the podcast/blogs, "Why would you hire someone to be a programmer and not want to check that they can actually write decent code?".

In fact, the way in which the interviewers respond to your code, their level of enthusiasm and the depth of the questions they ask you about it, are very insightful in helping you to decide if you this company is for you.

Sadly I've never been asked to present/discuss some code in an interview. The nearest I've come to is a basic (very) coding test.

However, from what I've seen, software companies should ask for code at interviews more often, software quality could only improve by at least eliminating people who "would be better in another career".

Ash
+4  A: 

A towel

krosenvold
There's a frood who really knows where his towel is!
Treb
+1  A: 

Just bring copies of your resume. On-site interviews that I have been through usually last 1/2 - 1 day with multiple interviewers.

bob
A: 

Be specific to the interview -- try to gather some info about the job you're applying to and present relevant facts to the interviewer, i.e. if it's a Rails development shop they probably won't get too excited about that Gtk+ Widget you wrote, but that could change if the code repository is available on GitHub.

pantulis
+2  A: 

Courage. The courage to decline the position if your would-be boss or your would-be peers treat you rudely or unprofessionally on the interview. Be confident and be perceptive.

Now, more practically, I would say you need to bring a pen. And that's about it.

Jeremy Ricketts
A pen... to stab your interviewer in the eye? Or are you going to take notes on your arm? Perhaps bring some paper as well, not good to steal office supplies before starting work there :-)
paxdiablo
I'm thinking back to an interview I had. They gave me a pen/paper to work out a problem and of course the dang pen wouldn't work. I think it would have been awesome if I said "It's okay I brought one". I mean, I got the job anyway but still. If Bond was on an interview... he'd have his own pen.
Jeremy Ricketts
And he would stab the interviewer in the eye with it - after all his name is Bond. James Bond.
Treb
+2  A: 

Re: bringing code or not bringing code. The one sure thing about interviews is they'll want your resume (if you haven't already provided it). everything else is up to the interviewer.

Interview 101 - when arranging the interview, you ask "Is there anything you'd like me to bring, some example code perhaps?"

Let them tell you, don't try to guess.

nailitdown
Good answer. Don't guess, just ask.
JimDaniel
+1  A: 

Honesty and modesty.

Dress appropriate for the job (ie: don't wear a nice suit for a mechanical engineering job)

Ask the employer what they would like you to bring. You need the job, so find out what you need

Be ready for an on the spot code-test. If this happens, don't try and impress the employer with something fancy but doesn't actually work. Make it functional, what they want, nothing more, nothing less.

Be yourself.

And best wishes to you! I hope you get the job you want!

David Anderson
A: 

Bring some questions to show interest in the employer and their business!

Niklas Winde
+1  A: 

The answer depends entirely on the type of company you're interviewing with.

I can only really answer for the company I work for (a fairly relaxed agency) - but if you wear a suit to one of our interviews, we'll be wondering whether you're a fit for the culture.

As for taking 'things' - nothing that you wern't asked to bring, unless you don't have an option (eg travelling to the interview by public transport).

The only exception is, as others have said, to bring a bring a few copies of your resume - at least two.

Knowing your stuff is the key thing to 'bring' to the interview. Do your research about the role and the company.

Be up-front when you don't know an answer. Ask clarifying questions if you don't understand the question.

Interviewers shouldn't (imo) be asking trick questions, but they might ask you to give an example of how you would implement something. Listen to the stated requirements carefully.

Be prepared for a code review.

+1  A: 

Bring nothing but yourself unless asked to.

Don't worry about a lack of track record. If I were interviewing you, I'd home in on how you approached your masters project: How you dealt with difficulties as they came up. I'd try to get a feel for how quickly you acquired skills and techniques. More than anything else, I'd be keen on seeing how good you were at finding things out without help.

One of the most tiresome sort of people I've ever had in a programming team are those who aren't self-motivating, and who don't 'take ownership'. When they finish allotted tasks, they sit there inert, or trawling social sites under the apparent impression that this is acceptable behavior. If you show that you can take initiative, work under only light supervision, have the social skills necessary for team-work, and will stick at tasks then you are every team-leader's dream.

Phil Factor
+8  A: 
Simucal
Made community wiki to protect the innocent. Downvote all you want. I have dreams of building this and bringing it into potential job interviews.
Simucal
@[Simucal]: if you build it, send the robot to the job interview instead
Steven A. Lowe
@Steven A. Lowe, Genius! I could do two interviews at once that way also.
Simucal
+1  A: 

Give your name on stackoverflow, they will see how high your reps is ! :D

Nicolas Dorier