Take the 2-minute tour ×
The Workplace Stack Exchange is a question and answer site for members of the workforce navigating the professional setting. It's 100% free, no registration required.

I have test anxiety, and when interviewing I often get so stressed that I have difficulty completing tasks in the interview that I normally wouldn't have trouble completing.

I recently went through an interview where I was so nervous that I feel like I did poorly on one coding question in particular, something that I would normally have no trouble with otherwise.

How do you overcome nervousness and anxiety when interviewing? Is it wise to inform the interviewer ahead of time that you have anxiety?

share|improve this question

migrated from programmers.stackexchange.com Nov 9 '12 at 14:42

This question came from our site for professional programmers interested in conceptual questions about software development.

1  
I would presume just about everybody would have nervousness and anxiety in an interview situation. –  sevenseacat Nov 9 '12 at 5:46
    
Sometimes I try and tell myself. "The interviewers are just as nervous as me" –  dreza Nov 9 '12 at 8:00
5  
If you tell yourself that the job interview is "important to your life" then you will be anxious about the result. If you can find a way to treat the interview as a game (not so important, but nice to win) you can remove a lot of anxiety. No single job interview is so important, try going to some simply to hone your skills. –  Jaydee Nov 9 '12 at 9:39
1  
If taking a shot of Tequila is out of the question, I suppose you can try these: studygs.net/tstprp8.htm –  MrFox Nov 9 '12 at 15:06

6 Answers 6

Practice, practice, practice. It doesn't recreate the stress of an interview, but it will help you form habits you can rely on when you are stressed. There are any number of book on programming interviews. Get together with a programmer friend and run through mock interviews. You may also get lucky in the real interviews and be asked a problem similar to one you've already done.

share|improve this answer
1  
+1: All the psychology in the world won't help if you don't just keep practicing and getting used to it. –  SnOrfus Nov 9 '12 at 6:36
    
@SnOrfus There are plenty of cases where skilled people failed interviews because they were too nervous. Some of them are even discussed in those books Charles was talking about (see Cracking the Coding Interview). Getting it right mentally is definitely something to pay attention to if you know it's an issue for you, just like the OP's case. –  Yam Marcovic Nov 9 '12 at 13:36
    
@SnOrfus but understanding that fact is psychology ;P –  Rarity Nov 9 '12 at 14:41
    
I'd add that a great venue for practicing is User Group meetings. Even if you don't feel confident enough to "live code" in front of a room of 20 people, just explaining code should be a start. Then work up to live code. If you can do that in front of 20 people, you should be able to do it in front of 2-3 who like you well enough to invest an hour or more in an interview. –  Amy Blankenship Nov 11 '12 at 2:21
    
+1 You can start practicing by thinking out loud or explaining the code to your colleagues. If you're still in school, with another fellow student. –  Spoike Nov 11 '12 at 15:41

For me it's all about being aware of your situation, and not blowing it out of proportions.

Interviewers want to ask tough questions

  1. It shows how well you perform under pressure and time limitations
  2. It shows your ability to break things down and not give up even if the problems seems hard.
  3. If you fail, it can bring your confidence down a bit from when you entered, and you might ask for a lower salary.
  4. They want the chance to get excited by someone's surprising ability. They won't get that by asking questions most people probably already know how to answer.

The important things to remember

  1. The interviewer and you know you might work there eventually. Show them your good sides. Be confident. If you work there someday, you might end up being friends, and it'd be much nicer not starting out with a panic attack. So take it easy, do your best, and let them do the judging of whether they want to have you there.
  2. People are different, and they perceive things differently, and in different times and situations. If you don't do a good job on your interview, don't immediately jump to the conclusion that you're no good. You're going to do good on what you've prepared for well enough. Anything else is a matter of luck.
  3. Interviewers don't want to waste time; they want to get back to work. In my last interview, I was asked a question, and since there were several ways to go about answering it, and I seemed to have already picked one, I explained that in real-life situations, I might consider several alternatives and take time to think about them, but for the sake of time at that particular moment, could he tell me whether I've picked the right way to think about the problem. The answer happened to be yes, but I don't think a bad impression would be entailed had it been no.

To answer your last question

I think it is wise to let them know about possible anxiety. If you get anxious, it's not like they wouldn't be able to tell. But if you tell them about it first, then either you're going to get anxious and it wouldn't be of any surprise to them, or.. that just by putting it out there, you might actually feel better and calmer.

share|improve this answer
1  
Additionally, most employers have come to expect people to be nervous. One place I worked at had a "code day" (or, for the server/IT people, a "gauntlet"). Ultimately, the code didn't much matter (as long as it wasn't atrocious), what mattered was how the prospect handled stress and the task given to them. Additionally, they want to know how you go about solving a problem. –  Shauna Nov 9 '12 at 15:10

The interview is only a part of the hiring process, and coding during an interview is only a part of an interview.

If this is your weak part, ensure that:

  1. Your profile is solid enough.

    If the candidate has dozens of open source large projects available on the web, it is pretty sure that this person is able to write code, even if the coding part of the interview was not so good.

    If, on the other hand, the only thing you can show to a recruiter is your one-page CV which has nothing interesting in it, then, well, asking you to code during the interview is the only way to know if you're able to code.

  2. You can talk with ease about you during the interview, outside the coding phase.

    Coding skills are crucial, but communication is even more important for a developer. If you're able not only to show that you know how to write code (see point 1 above), but also can communicate clearly about you, describing your career, your strong points, etc., it would be weird for a company to not hire you if your skills match the expectations.

  3. Be clear. Tell the interviewer that you are unable to handle stress during the coding phase of the interview, but that you were able to handle correctly the stressful situations during your previous work (ensure that any one from the company you worked in previously can confirm that, if needed).

    Once finished coding, explain to the interviewer what the stress did to you. There is nothing wrong in saying something like:

    Right! I could have used Factory pattern here. I didn't thought it because of stress. But I'm quite familiar to Factory pattern; you can check my last open source project to see how I implemented it the last month while doing refactoring, simplifying largely the code.

share|improve this answer

A few thoughts that might be helpful.

  1. A job interview is an unnatural situation, and the overwhelming majority of candidates is nervous. Interviewers are generally aware of this; it's usually easy to tell when a candidate is nervous, and the better ones will take this into account.
  2. A job interview is two-way. A programming test's primary purpose is to see whether you can actually program, but the fact alone that you are given one, as well as what it tests and how, tell you a lot about the company. They are evaluating you, but you are also evaluating them. This also means that if you suspect that it's one of those companies that purposefully put candidates under a lot of pressure during the interview, this might hint at a company culture that considers a stressful working environment normal.
  3. More than half the people who apply for a typical programming job cannot program at all. If you can, you're already ahead of half the other candidates, even if you barely pass the programming test.
  4. Some programming tests have questions ranging from beginner to guru level; nobody is supposed to score 100% on these. Getting 20% right might still make you the job.
  5. Your life does not depend on a single interview, ever. At least not in this profession - there are simply too many places that need software written, and too few good programmers to write it.
  6. Adrenaline is a two-edged sword. Try and see if you can find a way to use it to your advantage.
  7. Go to interviews while you don't need a job, just to build up some experience. And who knows, maybe you'll get a stellar offer much better than your current job.
share|improve this answer

When I played the organ at church, people used to ask me how I could possibly do it without being scared to death. My answer was that I did it every week in spite of being scared, then after a few years I realized I wasn't scared anymore. Nothing beats practice in overcoming anxiety.

That being said, there are things that can help. First is being aware of the underlying cause of your anxiety. Usually in that situation, it comes from worrying too much about what other people think of you. Don't try to say what you think the interviewer is expecting you to say, teach him how to solve the problem, as if he was a colleague who didn't know the answer.

The other reason people get nervous is they don't know how to react when they get stuck. The thing to do is think out loud and ask questions. Make the interview a two way street. Don't just stand there silently spinning your wheels until you work yourself into a frenzy. State what you remember and don't remember, and ask for clarification, just like you might while on the job.

Asking a stupid question to get yourself unstuck is better than giving a stupid answer because you didn't ask for help. One time, I arranged a last-minute interview when I happened to be in the state. That company used C++, which I had never used professionally and didn't have time to review before the interview. I told them as much, but they asked me C++ questions anyway. I actually had to ask for class Class1 : public Class2 which was the base class and which was the derived class.

That might sound like interview suicide, but I got the job because I didn't let trivial syntax get in the way of demonstrating my broader experience. The interviewer knew perfectly well I could have googled that in two seconds, and that the alternative was either not answering at all or taking a 50/50 shot that I would confidently make a complete fool of myself.

If you don't get the job, it's not the end of the world. Come up with some strategies for improvement and try again.

share|improve this answer

Two thoughts on that:

  1. If you're invited to the interview, your chances of getting the job are higher than winning the lottery. Are you afraid of not winning the jackpot?
  2. You're asked to demonstrate something you enjoy (coding). Are you usually afraid when coding?

Even if you can't resemble the usual coding-environment you feel comfortable with in an interview situation, try to get into the feeling you usually have when being in coding "flow". You might want to try NLP's "anchoring" technique to achieve that.

share|improve this answer
    
Its not about being afraid to write code, it's about doing it in front of someone that is judging me. –  Kyle Trauberman Nov 11 '12 at 16:00
1  
Yes, but your activity - writing code - stays the same. You shouldn't change the way you work just because someone is watching/judging you. Did you ever do pair-programming? Besides, well-prepared interviewers usually have set criteria they're focused on observing, e.g. whether you're a documentation guy or a trial-and-error guy. Neither is right or wrong in general, but the position they're staffing might fit more natural to one or the other (e.g. nuclear plant vs. startup). –  domsom Nov 11 '12 at 17:33

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.