Nov 3, 2006

5 Java Interview Tips

Tip #1

Be honest to answer technical questions as you are not expected to remember everything (for example you might know a few design patterns but not all of them). If you have not used a design pattern in question, request the interviewer, if you could describe a different design pattern.
You have no control over what questions get asked, but you have control over what message you want to get across to the interviewer. This is done mainly through open-ended questions like

Tell us about a instance in your recent project where you made a significant contribution, where you had to choose from different available options, also give us the reason how and why you chose the particular option?

More open-ended questions are discussed in Tip#4. So, make the most of your open-ended interview questions through proper preparation. Research the organization, review the requirements, review your resume, evaluate   how you can link your achievements and experience to the requirements, and have a list of questions for the interviewer (interviews are two way street -- you need to assess the organization as well  -- this will make your dilemma easier if you get multiple job offers ).

Tip #2

Every body is nervous for interviews and being a little nervous is natural. But if you are too nervous then you can overcome this by preparing for your interviews and by treating each interview as a free technical/behavioural training course. Have an attitude that even if you are not going to get the job, you are going to learn something good out of it. If you go with this attitude you will put yourself in a win/win situation and you might really get the offer. If you take this attitude you can learn a lot from your interviews. Also never think that you have to answer all the questions correctly. Do not get put off by a tricky or a difficult question. What really earns you a job is the combination of your knowledge + experience + soft skills + attitude

Tip #3

Where possible briefly demonstrate how you applied your skills/knowledge in the key areas like design concepts, transactional issues, performance issues, memory leaks, best practices etc along with your business skills and interpersonal skills. Find the right time to raise questions and answer those questions to show your strength in the technical key areas, business and interpersonal skills.

Tip #4

Tell me about yourself or about some of the recent projects you have worked with? What do you consider your most significant achievement? Why do you think you are qualified for this position?

Above mentioned interview questions are very common and the interviewer will be mainly looking for 4 qualities:

1. Passion.
2. Ability to understand potential failures (transactional issues, concurrency issues, design issues etc).
3. Ability to see things at a high level as well as drill down when required.
4. Ability to think dynamically to deliver solutions to complex problems and ability to analyse “what if ” scenarios (What if I want to support a non Web client?, What if I want to support other types of products? etc).

Tip #5

What was the last Java related technical book or article you read? Which Java related website(s) or resource(s) do you use to keep your knowledge up to date beyond Google? What do you think of some of the emerging technologies/frameworks like AOP, IOC, Spring, Tapestry etc? What recent technology trends are important to enterprise development?

The interviewer will be mainly looking for your:

Curiosity to learn: How eager you are to learn new things and keep up to date with the technology.

Please share your favorite interview questions and the motive behind those interview questions.