|
During the last week I had to interview five developers for a position that required the following skills: Flex, Java, Spring, and Hibernate. Most of these guys had demonstrated the 3 out of 10 level of Flex skills even though each of them claimed a practical experience on at least two projects. But this didn’t surprise me – Flex is still pretty new and there is only a small number of developers on the market who can really get Flex things done.
What surprised me the most is a low level of Java skills of most of these people. They have 5-8 years of Java EE project behind their belts, but they were not Java developers. They were species that I can call Robot-Configurator. Each of them knew how to configure XML files for Spring, they knew how to hook up Spring and Hibernate and how to map a Java class to a database entity. Some of them even knew how to configure lazy loading in Hibernate even though not all understood why it’s needed.
Two out of five developers who claimed seniority in Java proved to have a mid-level understanding of this programming language. The other three really disappointed me. They didn’t even know the basics of Java…One of them had no idea of what the interfaces are for. The other one was still killing a thread by calling a deprecated 10 years ago method stop(), the third guy had issues explaining the data flow of a standard Web application built with Servlets and JDBC.
Next time you’ll be interviewing a Java guru, ask him/her the following question, “There is an HTML form with a button Submit, a servlet and a relational database with the table Customers. The users enters a First and Last names of the customer, presses the button Submit, and you need to write the code that would return the detailed data about this customer. Explain IN DETAILS the entire data flow and the HTML/Java processing you’d need to perform.”
Do not forget to repeat that the candidate is not allowed to use neither Spring, nor Hibernate. You might be surprised...
I like Java, and it’s sad to see these herds of creatures who truly believe that they are Java developers. They aren’t
Update. This blog has been also published as an article in Java Developer's Journal. It has ignited an interesting discussion: http://flex.sys-con.com/node/1040135
Damm....this really brings tears in eyes.
I m still nt able to get that they couldnt explain such a simple thing
without using spring/hibernate...it is basic things.n integration of Flex n
java is not tough at all...
Almost nothing is tough if you care to learn it. But if you are just one of
the blue collar workers standing by the Spring-Hibernate assembly line, why
bother? Bud light and the TV dinner is all you care about. Actually, in
this case it was rice and curry dinner.
It is not surprsing, considering some facts:
1. Most job candidates bumped up their "seniority level".
In fact, most recruiters asked them to put that on their resume or market
them as such...
Here's an example of what a great resume an actress fudged up to get ahead:
http://www.cnn.com/video/#/video/showbiz/2009/07/24/dcl.coolidge.intv.short
.cnn
My own list of questions that candidates failed to answer during recent
interviews:
@Valery Asking the second and third questions may not be quite right. The
answers to these questions can be googled up in under 2 min if needed on
the real projects. Questions have to be more open ended.
I would strongly disagree regarding Q3. This is a fundamental type in Java
API, and knowing how to work with it is a must for any Java developers.
Hey, using for-loop + Iterator, what question should be simpler that this
one?
Valery, Yakov,
First, I have to admit I would not know the answer to #2 unless I google it. I do not feel bad about it as I rarely need to go to that level. I would not qualify as expert coder but would easily pass as hands-on developer by american standards Yakov is imposing.
You are talking about the same thing, but from different perspectives. Yakov is trying to check if the person claiming 8-10 years in Java touched it in the last 5 on the code level or at least will be capable to contribute at coding capacity. Valera's questions are more of what you expect to ask person with 2-3 years of hands-on experience to rate if he is in top 20% that would qualify him to work in expert environment. Then you need to find out if he grasped the best practices and understands innerworking/differences between different approaches.