GoMyJob.com
On-site Programming Interview Preparation

On-site Interview

In programming interview, the types of question between phone and on-site interview are quite similar. The
difference, especially in programming interview, is the level of difficulty in questions. For example, in
on-site interview, you may be asked to write a code on a whiteboard, while getting such coding question
in phone interview is unlikely.

BTW, before going into any interview, please go to the website of the company you are interviewing with,
and do some research. It's a good idea to have some ideas about how to contribute to creating new
products of the company.
Key things you have to keep in mind

Most tips I mentioned in phone interview apply to on-site interview preparation. There are a few more
things you have to keep in mind.

The single most important thing is to practice.
Most IT companies use whiteboard coding questions. Writing code on whiteboard is not an easy
task even though you are very good at programming. So, you'd better practice enough
beforehand.  It's even better if your friend  can help you for mock interview. There are a few more
things to keep them in mind when you practice.
Many questions in on-site interview are not easy. Actually, they are difficult. It's a good idea to
understand questions first, and keep talking about what you are thinking because Interviewers
want to know how you think.
Before writing the code, design the algorithm (or pseudo-code) first. This helps you to avoid diving
into coding directly without enough understanding on problems.
Sometimes, even if you give correct solutions, interviewers may go further by asking you to
optimize your code. So, think whether there is alternative approach.
Your code should properly handle all boundary conditions. For example, consider what happens if
you try to pop an element from empty stack. What if memory allocation fails? What if you get invalid
inputs? It's a good idea to check all boundary conditions when you practice, so, you will do the
same thing in actual interview.