I recently had an interview (for a summer internship) for which I was told beforehand I needed to bring a pencil in case there were technical interview questions to do with coding. I was particularly nervous about the last bit but soon enough, Google winded down my nervousness a bit. I scoured the web for any type of prep material and was glad to find many sources of guidance for situations like mine.
If you’re soon facing a technical job interview, here are a few resources you should probably check out before the big day.
Find Out What NOT To Say Or Do
This really applies to all types of job interviews, not just programming job interviews. I think it’s safe to say that you should really think your answer through before you blurt anything out or do anything. That’s quite common sense, but when you’re nervous, it’s easy to blank out and forget things. Well, you’re not alone.
There’s a relevant discussion on Stack Overflow calledwhere you’ll see a lot of amusing things interviewees have said or done. Here are samples from the poll:
That was the top voted poll answer. Lesson to take away – don’t cheat. Surprised?
Here’s another one:
You probably should NOT say you invented invalid markup. Just a thought.
Here’s another simple thing you should not say:
Not putting a lot of effort into an interview might just bite you back later on. Lying on an interview might also bite you back.
For more responses, be sure to visit. Though you may feel tempted to mock some of the poll responses, just remember that when nervousness strikes on the big day, it’s not all fun and games anymore. What you can do before the big interview is realize that there are actual lessons to be learned from these funny responses.
Find Out What Coding Questions To Expect
There’s no guarantee that you will receive a coding question that’s been posted on the web but if you can answer some of the ones that have been asked and shared online, you might have a better chance of not freezing during this part of the interview.
Here are a few sample coding questions:
Test yourself with more questions on GlassDoor and Kundan Singh’s website, the latter of which also provides excellent general strategies for technical interviews. Don’t assume all data is given to you during a coding question, think out loud, etc.
If you want actual books on the topic, here are a few titles that have been recommended (links lead to Amazon):
- Programming Interviews Exposed: Secrets to Landing Your Next Job
- Cracking the Coding Interview: 150 Programming Questions and Solutions
Get A Refresher In C/C++/etc. And Logic
If the last tip revealed that you are rusty in a programming language, here are a few places that will help you get a refresher or crashing course. The book, Programming Pearls (2nd edition) is a classic book that has been recommended quite a bit since it has lots of exercises and tutorials in C and C++ to help you think like a programmer. James also is posting a course here on MakeUseOf, so go check that out. There are also many websites with tutorials (and even video tutorials!) that you can review.
For actual coding practice, a site that I haven’t seen talked about anywhere but that my Java professor had us frequent a lot is CodingBat. It’s a site with simple (and sometimes difficult!) coding exercises in Java and Python. For practice with your logic thinking skills, Project Euler has lots of logic/coding challenges.
Find Out What The Overall Interview Experience Might Be Like
There’s a lot of people that have blogged about their overall experiences while being interviewed for corporations like Microsoft and Google. Even if you’re not interviewing with precisely these companies, your technical interview experience may be similar. Here are a few blog posts of interest:
- Peteris Krumins: My Job Interview At Google
- Corey Trager: Google Interview
- Rod Hilton: My Interview With Google
- Kristian Kristensen: My Job Interview at Microsoft Development Center Copenhagen
There are plenty more if you search around. From these posts, you’ll find out that the candidates had a lot of preparation beforehand. The other thing you’ll learn is that the interview process lasts some strenuous 6 hours or more. There are other little things that will help you get a feel for what to expect during on-site interviews, which come after the initial screening interviews. Regardless of how far you get in the interview process, it’s always good to know that there are similar people in your shoes that have survived these interviews, and it is always interesting to read their experiences.
Have you had a technical or programming interview before and wish to share your experience? Let us know in the comments!