1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

How to prepare for my first programming interview?

  1. Apr 26, 2013 #1

    I'm not sure if this is the right forum, sorry if it's not!

    I have been called to an interview for a summer internship at a company as a "developer/programmer". I have never been to such an interview before and I would like to know if there's something special that I should do to be as well prepared as possible? I'm not sure exactly what language I'm going to work with but I have a solid understanding of a wide range of programming languages (java,c/c++,c#,PHP etc).

    So in short. What could I expect to be asked during the interview? What should I do to make myself look like the best candidate? Bear in mind that it's for an internship, not a full time position (if that makes any difference).
  2. jcsd
  3. Apr 26, 2013 #2


    Staff: Mentor

    review your resume and job application be prepared to explain in one or two sentences the projects you worked on.

    I interviewed one student who did a project developing an algorithm similar to map/reduce but he couldn't explain it in simple terms other than to say that google uses this type of algorithm in search.

    You may be asked some simple questions like how to swap values without losing the values, or call by value vs call by reference for some language on your resume or to write a simple sort or search algorithm in it.

    You may be asked a google out of the box question where they want to see how you think so dont panic and think out loud so they can give you hints.

    Also ask questions, remember you're just being intereviewed you're interviewing them. Find out about the environment, the kinds of work inject something into the conversation when you recognize some place where you can help.

    If you know something about a topic you can say I'm familiar with it don't say I have no idea or don't know so say something like how you'd get more familiar with it (like I have a book on it or I saw a book on it at the bookstore...)

    As Bruce Lee said: Be like water my friend, when poured into a cup it becomes the cup...

    Last edited by a moderator: Sep 25, 2014
  4. Apr 29, 2013 #3
    reverse a linked list in C
    difference between an abstract class and an interface
    know pointers
    know hashmaps
    know your time complexities and space complexities for algorithms
  5. May 1, 2013 #4
    It depends on the interview, but I found that for most of my internship interviews they were a lot more interested in my "soft" skills (like working with others, handling deadlines, etc.) than they were interested in my raw technical knowledge. It's easy to put things like "good attention to detail" or "analytical skills" on a resume, but make sure you can explain exactly what you mean by those things and back them up with examples. You should also be able to intelligently describe and talk about any of your past programming experience. I would say those sorts of things are what you should focus on more than technical knowledge (for an internship interview, at least). For an internship, they realize that you probably don't have a lot in the way of technical experience or knowledge, and so it makes more sense for them to focus on who you are as a person. They want to see if you're going to work well on a team and if you're going to be able to catch on quickly and figure out stuff on your own. To determine that, they're probably going to care more about how you've behaved in the past than what you know right now. It may be different for a real job vs an internship, but that was my impression of how internship interviews went (and I was relatively successful in my interviews).

    Edit: now I read your post again and realize this is a summer internship rather than a full-year internship (which is where my experience is), so take the above with a grain of salt.
  6. May 1, 2013 #5
    We usually look for someone who can explain what they claim to have done in simple language. If they tend toward using Jargon, if they sound pretentious, if they are trying too hard to impress, we may look for the next candidate.

    Above all, be honest, and be yourself. Where we work, you can make mistakes, but you have to own up to them quickly or you will lose the trust of everyone around you. We want plain spoken, honest straightforward people who will do no less. Sometimes, those interns like what they see and they come back for full time work.

    We want to start everyone off on the right foot.
  7. May 8, 2013 #6
    I recently had a phone interview with a programmer. It must have gone fairly well because they invited me to visit for an in-person interview. The strategy I used was essentially:
    1. Don't panic.
    2. If you don't know something, admit it.
    3. If the interviewer gives you time to figure it out, try to explain clearly what you're thinking and why it might or might not work.
    My ignorance about certain CS fundamentals became obvious pretty quickly. Luckily, the interviewer gave me lots of hints while I (slowly, awkwardly) figured out how to improve my original naive answers. I think they wanted to test how I reacted when given a high-pressure assignment which I couldn't do reliably. I'm guessing what they want is something like "use what you know, ask for help on what you don't know, and don't make up bull****."

    That sounds like a very constructive workplace culture. Are you hiring?
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook