Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am a recruiter. I want to learn as much as I can about JEE5/JEE6 so when I try and find these types of candidates I can at least talk intelligently with them.

What I need to understand is what goes without saying? So for example, if you were a J2EE or had experience with JEE5 or JEE6, could I assume you had spring and hibernate? Could I assume you had Jboss and Jboss admin?

I guess it would be helpful if I posted a job description and let you guys tell me what is wrong with it?

Candidate must have the following skills:

  • Extensive experience with Java/J2EE Development
  • Experience with various Development Tools (Eclipse, SVN, etc.)
  • Database design and SQL expertise
  • Web Services
  • JavaServer Faces (JSF)
  • Model-View-Controller (MVC)
  • Comfortable working in a Unix/Linux environment
  • Maven
  • JBoss Deployment and Administration
  • Swing/AWT
  • Scrum/Agile
  • TeamForge

So if I was a certified J2EE would i have all these skills? Are these skills even grouped right? If you were writing this job description for a J2EE what would you change? I am trying to learn. I am not posting this to find candidates for a job. I am posting this to try and get a handle on what a hiring manager is asking for and be able to tell him, there is no way a J2EE has all these skills or, no problem, all J2EE's have these skills. Am I making sense?

share|improve this question
3  
There is nothing wrong with the job ad as long as it reflects what the employer need. What is your question? Can you focus it a bit more, please? –  Martin Wickman Mar 23 '13 at 7:29
3  
Employers always ask for more than they can get. If I can do the job, I will apply. The same might not be true of others, however, and you might be turning away some good candidates with a skills list this specific. –  Robert Harvey Mar 23 '13 at 15:06
add comment

2 Answers

A regular JEE developer would know either most of those skills or the equivalent, except for one outlier: Swing/AWT. Those are both desktop application GUI programming, so a typical web developer would most likely not be very familiar with them (in the sense that they wouldn't use it often).

There are a few things on that list with equivalents that you may need to know about when talking to the candidate:

  • JavaServer Faces - JavaServer Pages is the biggest contender, otherwise there are other templating languages that can be used - Velocity and FreeMarker are popular options.
  • SVN - Git, Mercurial, and CVS are other common version control systems.
  • JBoss - Application server. Some other possibilities are Tomcat, Glassfish, and WebLogic.

Overall, nothing about that skill listing is too odd. It isn't asking for a skill in a completely unrelated skillset (such as another language or platform entirely).

The issue comes with assuming anything. Hibernate is a very common skill, but it can be used in multiple flavors. It is also very complex, so while a developer may know how to use it, they might not know how to set it up or the fine-tuning that could be necessary.

One last thing - JEE5/6 and Spring tend not to be used at the same time. For a long time Spring was how the JEE stack should have been - and then JEE5/6 brought in some of the features. Nowadays they are competing platforms. Nothing stops you from using Spring in a JEE project, but it would be adding redundant capabilities and complexity for no reason.

share|improve this answer
add comment

I will run through the chances that a given software developer applying for a typical Java developer possesses the following skills:

Extensive experience with Java/J2EE Development Experience with various Development Tools (Eclipse, SVN, etc.)

Goes without saying

Database design and SQL expertise

Common

Web Services JavaServer Faces (JSF) Model-View-Controller (MVC) Comfortable working in a Unix/Linux environment Maven

Common for web application developers

JBoss Deployment and Administration Swing/AWT

Uncommon for web application developers

Scrum/Agile

Familiarity should be common but I don't think anybody should be discounted for not having worked in an Agile/Scrum environment before.

TeamForge

This should be a nice to have as this a very specific skill set that probably doesn't have a very high learning curve.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.