RSS RSS feed | Atom Atom feed

I'm Interviewing, Is anyone out there??? Anyone?

For the past week and half, I have been interviewing for a Senior Programmer/Analyst contract position at work.  Out of 35 or so resumes, only 5 were from local candidates in St. Louis.  The rest were submitting by consulting companies based on online test scores.  Hmm, I wonder if cheating is possible in this paradigm...  Let's just say that the answer to this question is a resounding YES!    The fun begins with my first "phone interview".  According to his account manager, this particular candidate did very well on his tech screen so he should be a good fit for my group.  We set up a 3 way call and once connected I proceeded to ask questions and inquire about his past experience.  Every single question I asked him, he repeated the question out loud and then paused for 10 seconds or so.  After the pause, he began to spew back the answer in a very incoherent way and only with about 20% accuracy.  My guess is that he either had someone next to him attempting to provide the answers or he was using google.  Either way, could this really work?  How long would it take for your potential peers to find out that the only thing you know about java is drinking it.   Anyone else have similar experiences?

Of the few senior level candidates I was able to interview in person, only two have been able to explain how .equals and hashcode work with respect to the collections api.  Maybe I should have listed Effective Java as a prerequisite for the interview.  When asked how a collection deems an item a duplicated, I've received answers stating that those details are not exposed without going through source code and also that only hashmaps are capable of dealing with duplicates since they have a key.  The latter answer was the best because I quickly responded with, "How do you know if the key is a duplicate of one that already exists".  I got a blank stare and the candidate immediately changed the subject and asked out the culture.  I find this one question a good litmus test for determining if someone might be a good java programmer or not.   What are your go to questions when facing a potential candidate to hire?  Am I being too hard?  Is expecting the person to back up the details stated on the resume considered harsh? 

Another humorous exchange that I had was about web frameworks.  I told the candidate that they would be leading a project with a couple junior programmers and that they needed to pick a web framework.  I told them there was no right or wrong answer but I wanted to know which frameworks they would consider and why.  This particular candidate told me that they would pick JSF and they were pretty firm about it.  I didn't remember seeing JSF on their resume so I quickly glanced over it again and sure enough, it wasn't there.  I dug a bit further and asked why and the candidate told me that it was the web framework that listed most frequently on dice.com so it must be good.  I then allowed the candidate to verify that they had no experience with it and also didn't have any friends or colleagues using it.  I summarized with a statement similar to, "So you would pick a web framework that you don't know and also don't know anyone using it because of it's popularity on dice.com".  After that the candidate got pretty quiet and the interview shortly ended. 

Needless to say, the req has still not been filled and it appears that it might be open for a while.  The only thing worse than being short  handed is having people that need babysitting and slowing down already productive staff members. 

For those of you looking, Joel has a good read on resumes and the interviewing process.


Re: I'm Interviewing, Is anyone out there??? Anyone?

wow, that is kinda funny

Re: I'm Interviewing, Is anyone out there??? Anyone?

I don't think you're being 'too hard'; obviously, it is essential for the
success of your business that you have competent software developers. And I'm
not going to tell you how to run your business and interview people;
certainly you know a lot more about it than I.  I'm just going to throw this
link out for discussion purposes:

http://heather.cs.ucdavis.edu/itaa.real.html#tth_sEc7

Again, I'm not trying to say this document is relevant to your situation; I'm just
curious what your thoughts on it might be.

Re: I'm Interviewing, Is anyone out there??? Anyone?

We are having similar problems here in the ATL. It's hard to find someone who knows the even the basics properly, forget about higher level or more complex things like EJB's or ORM. My main issue with candidates is their lack of honesty; if you have, for example, Hibernate on your resume, make sure you actually have worked with it and can answer at least the basics on it. I don't expect people to remember how to define in XML configs a one-to-many inverse owner relationship.... but if you have done hibernate or any ORM and you don't know what a one-to-many is, don't put it on your resume. Or at least don't say you have 2 years experience with it!

Re: I'm Interviewing, Is anyone out there??? Anyone?

I'm a Java Programmer in St. Louis...hmm. Maybe I should send you a resume?

Re: I'm Interviewing, Is anyone out there??? Anyone?

If my experience accurately portrays the current job market landscape in St. Louis, Java programmers are in demand big time.  Hence, if you are a qualified Java person, the sky is the limit. 

Re: I'm Interviewing, Is anyone out there??? Anyone?

You're having the same problem that we are and I suspect that lots of people are having.  There just aren't enough qualified people out there.  The number of people that are in this field that shouldn't be is just mind boggling.  I mean, how can people be in this field for 10 years and still not be able to give me their thoughts on checked vs. unchecked exceptions.  Seriously.  That's just not professional.

And please, to the person who posted that UC-Davis article...that's just hogwash.  There will always be stupid hiring managers and policies.  That's the nature of large corporate environments.  The guy that is posting, however, is talking about basic programming skills for the given environment.  He was more than generous on the questions but if a person can't talk about basic collection knowledge in Java then they are going to have problems everywhere.  You must have a thorough understanding of the basics if you can expect them to have the aptitude to pick up other tools quickly enough. 


Re: I'm Interviewing, Is anyone out there??? Anyone?

You are focusing really hard on which details of Java a prospective employee should know.  So hard, in fact, that it is literally unthinkable for you that one could hire a candidate with no knowledge of Java at all.

The point the 'hogwash' article is trying to make is this: why is there a 'given environment'?  Quoting directly from the
article:
'Any programmer who already knows C [the industry standard for the last 15 years], needs only a week, maybe two, to reach proficiency in Java.'
Is this 'hogwash'?

Re: I'm Interviewing, Is anyone out there??? Anyone?

Ugghh...you can not take a good C programmer and turn them into a good Java programmer in a few weeks.  Sure, you can learn the language to a certain extent but it's not about the language anymore.  That article is so outdated it's ridiculous. 

Today it's about the libraries.  It's about the frameworks.  In the environment I work in we use Java as our language but then we use Hibernate, Spring, Spring MVC, Lucene, and other libraries.  These take a lot longer to use, let alone the development environment.  It's just not practical to hire someone for a job that will take 6 months to a year to ramp up for.  And that's being generous.

But that's beside the point.

This career, whether someone wants to accept it or not, requires that you stay current with your skills.  It requires you to keep an eye on new trends in development practices.  If you can't stay at least somewhat current then I honestly don't think you really are that good at what you do.  That's just my opinion, though.  If you are a C programmer and want to get a job coding Java then go learn Java and read up on how Java developers write software. 

Re: I'm Interviewing, Is anyone out there??? Anyone?

I gave up long time ago about asking Java questions, after I found out a certified programmer with no previous java experience before taking the exam.

Today what I use at interviews (the very first thing, just after "hi, nice to meet you") is a three-question quiz. I have a pool of questions, but these are some:
  • Implement a function that calculates the n fibonnaci number (I give the formula)
  • Reverse a String
  • Reverse an Array of string
BTW, the  candidates have an IDE and access to the Javadocs.
Just by looking at the candidates doing these kind of questions, you can say alot.

If somebody pass the quiz (believe me on this, 80% of candidates fail at lest 2, 90% at least 1), I then pass to design question and ask for more "advanced" things, just to measure strengths.

Re: I'm Interviewing, Is anyone out there??? Anyone?

Lookout. I tried giving a written quiz one time (I had the guy sit down at a terminal and find one obvious syntax error, then compile and run a hello world Java program). My director read me the riot act.. Any "test" of a candidate can put us in a legal bind, he explained. A lawyer could say all candidates have to have the same exact test under same conditions -- or we could presumably get sued..

Re: I'm Interviewing, Is anyone out there??? Anyone?

Based on the training(how not to get sued) that I've received, offering a test is not legal. As the person doing the interview, you need to be able to defend the interview. This means treating each candidate the same, asking a subset of universal questions, and documenting the experience. If you really want to be safe, you should have another person conduct the interview with you. With appropriate documentation and another person present you should not have any worries.

Re: I'm Interviewing, Is anyone out there??? Anyone?

I've interviewed a lot of Java candidates in St. Louis myself and this sounds pretty familiar.  Hiring by referral is definitely the best way to do it as you then have some idea whether the candidate has a clue.

We found advertising in the paper and even major job web sites was useless - the volume was high and the percentage of candidates that were even worth interviewing was really small, maybe 10% tops.  By "worth interviewing", I mean that they had any experience that was even tangentially related to the job requirements. Of those, I'd say half or more could be eliminated in a basic phone screen. 
After a while, I kept around a well-honed list of open-ended but interesting questions that I used to draw from.  I'd throw one out and then see how far I could push the conversation.  For example, I might ask "what's your favorite pattern?", then drill into when you would use it and when you wouldn't, what other patterns it commonly interacts with, etc.  It was pretty easy to tell from these conversations whether we had a good hire. 

That said, there <strong>are</strong> a lot of really great developers in St. Louis and even though it took a while to find them, I was always impressed at the abilities of the ones we eventually hired.

Re: I'm Interviewing, Is anyone out there??? Anyone?

I feel your pain.  We had two developers quit last year and couldn't find any local engineers so had to go to headhunters and relocate.&amp;nbsp; We received two engineers with &amp;quot;on paper&amp;quot; experience but they both did badly (I thought) on my Java questions.&amp;nbsp; I had an interview partner and he thought I was being too hard, but I was really sticking to the basics such as what&amp;nbsp;are&amp;nbsp;the differences between List and&amp;nbsp;Set and their answers weren't really firm and clear.&amp;nbsp; When I asked harder questions I didn't get anywhere.&amp;nbsp; When I asked questions about J2EE, they both knew the right answers cold.&amp;nbsp; That tells me that a lot of mid and even senior level engineers are programming a lot, but they are not using the basic ideas themselves.&amp;nbsp;

My objections on their technicalskills were overriden by urgency and so we hired them both and I think they have the same weaknesses I saw in the interview, but I've also discovered that they have really valuable skills that I didn't ask for.  One guy knows the hell out of Javascript and that has become more and more important in our application, and it turns out our decision to hire him was really a good one.

As for not being up to speed on Effective Javs, &amp;nbsp;sadly, I fall into this category too.&amp;nbsp; I've read Effective Java, but that was a while ago, and I would have to study up to answer a lot of the details in that book, because I don't use it on a day-to-day basis and so I forget.&amp;nbsp;&amp;nbsp;

 


Add a comment Send a TrackBack