At my current job, we are looking for a junior developer, so two weeks ago we interviewed a not so junior developer.

So he is a self taught programmer , that has taken a course on web programming, and has 5 years of experience in developing websites in PHP.

We start the interview, we introduce the company, talk about our latest projects, he show’s us the last projects we made, and after my boss stop’s talking, I go for the technical interview..

I start with the obvious, how many experience you have, why did you develop your own CMS for this specific project… those kind of questions to get a generic feeling about the person in front of you..

Then I jump to the questions, that if you don’t answer correctly your done…

Me: “How do you manage your connections to the database? Do you use an ORM, a class?”

Him: “I use a class, but don’t know what an ORM is..”

Ok.. that’s not awfully bad.. but could be better..

Me: “What about design patterns? Do you know them? Use them?”

Him: “I’m actually more focused on programming than web design…”

Ouch, it’s a no go for this one.. your done…

Me: “What about the First normal form, second and third? Have you heard of them?”

Him: “No, I haven’t heard of that…”

Damn, this guy doesn’t know anything about anything..

Final question: “What about source control,  do you use it? Know what it is?”

Him: “No…”

And that’s that.. this is a guy who is programming for 5 years! He didn’t start yesterday.. he started 5 years ago, now how is it possible for a programmer with 5 years of experience, and doesn’t even know the basics??

How is this possible? I don’t know everything, I don’t know the normal forms from the top of my head, but I’ve used them plenty of times.. I don’t know all the design patterns, but I use them, and read on them… how can a programmer be like this?

It was 45 minutes of my life completely wasted on this interview..