Having given quite a few interviews over my short career and taken a bunch of them in my new workplace; i think its time i share some tips for people being interviewed.
- Firstly, preparing your resume. Remember the KISS funda. Keep it simple stupid. I have seen a lot of resumes which have an overload of information; which confused more than informed me. The main thing is that one's resume needs to inform not confuse. Customize your resume for the company to which you applying i.e highlight the work you have done which relevant to the profile they are looking for. Mention relevant skills-sets.
- Highlight Awards/special recognitions/papers/patents who you have got/published/filed. Put this at the very first.
- Don't mention tools like gcc/gdb or even cvs/svn/clearcase etc. If you have done C coding you surely have used gcc/gdb etc and no one cares abt which code mgmt system one has used.
- Don't misguide or provide inaccurate information in resume. I have interviewed people who claim to be "developers" or "maintainers" and give an impression that they have done a lot of coding but are in fact doing most maintenance/bug-fixing kind of work.
- You will easily get caught when the interviewer starts digging deep.If you have done bug-fixing, say bug-fixing.
- Also don't lie about your known expertise/skill-set. eg. One candidate i interviewed mentioned C/C++ as known languages. When further probed he said he learnt it in college and never professionally worked on it. That was the end of his interview.
Mention skills sets acquired while working professionally or even on college projects. - Also interviewers don't care about you hobbies/interests.
- Old adage but worth repeating: If you don't know don't lie. You are surely going to get caught. Its better to say that you don't know or haven't work on it so don't know it.
- Brush up on your basics. Although we understand/know most of the basics, we tend to forget them over time. Brush up ! Read your college reference books or other books that talk about the basics. This is the single most important advice
- Typical questions asked are "briefly describe yourself", "explain what work you are currently doing". Come prepared with these answers especially what work you are doing currently. Interviewers will check how deeply you understand the current product/system on which you are working.
- When asked to solve a particular problem, like writing a C program / solving a puzzle; take some time to think properly and use the whiteboard (incase of face to face) or use paper sheets (for telephonic interviews).
This is stating the obvious, but people try to solve problems in their mind; then lose patience and although they could have given the right answers; they screw up.
I have done it in the past and seen people doing it.
Real incident: Once, during an telephonic interview i asked the candidate to solve a certain C problem, he thought for a while; got impatient and asked me to move to the next question while his brain processed the current problem in the background.
I was ROFL ! I wanted ask if he had a dual-core brain! - Don't interrupt the interviewer with questions about the work/company etc during the interview. Once the interview is done, typically the interviewer will ask you if you have any queries. If not then you can tell them that you have some questions. Don't hesitate in asking about the type of work/general info abt the company but only at the end.
- Lastly, if you mention you worked on a certain technology or have knowledge about certain concept. Make sure you know it in and out else don't mention it at all.
eg. If you mention something like IPSec or RTOS and don't really know it properly, then its quite a turn-off and your chances of going ahead are close to nothing