tags:

views:

592

answers:

7

You are applying for a role "Java Developer" and you are called for an interview. What are the general knowledge you should/must learn before you sit in front of the panel?

A: 

Well first and foremost you need to be proficient in Java and be comfortable talking about coding problems which may be presented to you during the interview. Knowledge of (the curent state of) some frameworks is also a nice plus. Usually java is used on server side stuff, so try to look into some Spring, Wicket, Tapestry, Struts, JSP, JSF, Ibatis, Hibernate, or other interesting stuff.

Also, having a fallback plan to go into "presentation mode" if the interviewers do not seem to have interesting questions for you is a good plan. You want to show your stuff. Wow them, without lying.

Be careful with wat you say, some interviewers might actually have more experience than you, but do not show it, until it is verdict time.

Good luck with your interviews.

Rolf
A: 

Great tip. Thanks Rolf.

+1  A: 

I would read the Sun Certified Java Programmer study guide. Many employers don't expect you to have the actual certification, but they do expect you to know the material (whether they explicitly say so or not).

Bill the Lizard
agree with you. it's handy when it come to technical session.
Agree completely. If it is a general Java deleloper position, the guide is basically the Bible
Mario Ortegón
+1  A: 

In a lot of interviews for java postions I've been in, design patterns have been a big topic. Specifically Factory/Abstract Factory/Singleton/Facade. Doesn't hurt to brush up on those.

A: 

Prepare to talk about something you've actually done, and know intimately. A competent interviewer will ask for details.

Design patterns are good, but only talk about the ones that you've actually used, and be prepared to explain why you chose that pattern. All patterns have tradeoffs; if you pick Singleton as a favorite pattern, be prepared to explain why you chose it over alternatives, and how you dealt with the coupling that it introduced.

Don't lie. Don't try to turn a simple web form into a "distributed application with thousands of clients."

kdgregory
A: 

A few good tips here. At least you tell someone where to start.

+1  A: 

I've interviewed a couple of developers in the past, as well as joined a couple of interviews. What I've seen so far:

  • Design Patterns - Which ones have you used, and why.
  • Collection classes
  • Threading
  • Memory usage

For some places that want to dig a little further:

  • Soft and weak pointers
  • Java I/O classes
  • Profiling
  • Debugging

Depending on the position, then come specifics like usage of frameworks in case of a web developer, or Eclipse RCP, or Swing, whatever is the required technology for the job. In that case it is relatively difficult to generalize. My bet is that a little Swing never hurts.

Mario Ortegón
Thank you Mario. We need more tip from Interviewer. No need to be specific but a clue of what is expected.