
How to rip apart a programmers CV - SpunkyMoney
http://codercramp.com/2014/06/29/how-to-rip-apart-a-programmers-cv/
======
kalleth
Oh god. Most of this is hilarious.

"A seasoned C developer with 10 years experience can not instantly morph into
an advanced front end web application developer"

True, but they'll be a damn sight quicker at picking it up than anyone else.
And they'll write far better code when they're there.

If you're looking for a permanent employee, all development experience is
relevant -- there is a huge amount of overlap and retraining just for a
different language is no biggie. They'll also have solved (i'd bet) far harder
problems than "HOW DO I GET THIS UI WIDGET TO UPDATE WHEN THIS HAPPENS".

If you're looking for someone to hit the ground running from day 1, or work as
a contractor, it's different. But you generalise too far here.

"However, they have failed to mention anything else to back it up. I would
expect to see some of the following throughout their CV; Design Patterns (MVC,
Factories, Singletons, ActiveRecord), Classes, Objects, UML…"

In my CV (highly rated by everyone i've given it to) you won't find a single
one of these. Instead, you'll find _real descriptions_ of what i've
accomplished, who I worked with (mentoring etc), my methodology (agile, test
driven development) and so on.

And UML... holy shit, yeah, no.

Community work? See Ashe Dryden's "The Ethics of Unpaid Labor and the OSS
community", [http://www.ashedryden.com/blog/the-ethics-of-unpaid-labor-
an...](http://www.ashedryden.com/blog/the-ethics-of-unpaid-labor-and-the-oss-
community), and James Coglan's "Why GitHub is not your CV",
[https://blog.jcoglan.com/2013/11/15/why-github-is-not-
your-c...](https://blog.jcoglan.com/2013/11/15/why-github-is-not-your-cv/).

Hiring the right people has always been, and will continue to be, a hard job.
The only way to do it is to use common sense and actually read the CV's you're
being sent, then talk to the people you think could do the job to see if they
can.

~~~
opendais
Ya, I'm not sure if the OP was a troll HN post or what the goal was but the
bit about keywords to me made me immediately shake my head. The only people
who want keyword stuffed resumes are recruiters.

Also, the poor capitalization/grammar in places. e.g. (which i will cover
shortly)

I'm amazed this was upvoted.

~~~
SpunkyMoney
No troll. The typos etc are explained here:
[http://www.reddit.com/r/programming/comments/29yq47/how_to_r...](http://www.reddit.com/r/programming/comments/29yq47/how_to_rip_apart_a_programmers_cv/)

Mainly to do with the fact I am from the UK and we spell things differently to
people in the US.

~~~
opendais
In the UK, you still use I and not i.

Fair enough but I'd suggest in the future you proofread more before self-
submitting to HN.

~~~
SpunkyMoney
Correct, and we also spell things with an s where you use a z and others such
as we spell "color" as "colour". The problem is, if I were to correct it for
the UK, the US complain, if I correct it for the US, the UK complain. Since I
am from the UK I will definitely make US related mistakes because I have not
learnt your English.

------
tptacek
We haven't seriously looked at a resume in 2 years.

Phone screeners --- who barely count for anything in our process, but don't
get me started on that --- might skim a resume just so they have something to
start talking about.

Otherwise, our hiring process is resume-blind.

We bring people in directly out of school, from random line-of-business
programming jobs all around the country, and from networking jobs for people
who want to transfer into something more developer-y.

I should mention: our work is not easy. I can hold my own in an argument that
says we're significantly more technical and significantly more sophisticated
than the median Silicon Valley startup.

Resumes are worthless. Do not bother. If you're screening with resumes, you're
doing something wrong.

~~~
rpedela
A bit black and white there. I generally agree that resumes should not be a
top indicator, but they can be useful to screen out some people.

For example, I once posted a job that included the word "Ruby". I thought the
job posting made it clear that Ruby was a very, very small part of the job.
But I still got several resumes from people who were Ruby experts or at least
claimed to be, and that is all the experience they had given their resumes.
They had little or no non-Ruby experience. At the time, I needed someone who
could write Ruby code but had much more experience elsewhere.

So the resumes helped me screen out those candidates. And I also learned that
my job posting was worded incorrectly.

~~~
tptacek
And you talked to none of them? You just assumed that their resume told you
everything you needed to know about their capabilities? And if it didn't, too
bad for them for writing a shitty resume?

~~~
rpedela
In this particular case, I received ~20 resumes for 1 job and 80% were not
Ruby-only resumes. So yes the Ruby-only screened them out. However I would
have gone back and contacted them if none of the other 80% of candidates
worked out.

~~~
tptacek
You will get better results if you build a process that doesn't screen people
out because of their resumes. That doesn't mean you don't screen candidates,
and it doesn't mean that you don't have a funnel that knocks out a big chunk
of them before you get on the phone.

It just means: don't select people for their getting-a-new-job skills. Those
skills aren't relevant to software development work.

~~~
hallmark
Based on your other comment, does this mean you use a commercial or custom
general mental ability test in the funnel before screening and interviews?

It would be helpful to know more about what you do versus what you don't.

~~~
saturdayplace
You can read about tptacek's company's process here:
[http://matasano.com/careers/](http://matasano.com/careers/). It really does
seem like a good way to learn whether a candidate will be able to perform the
job.

------
V-2
"Any experience, languages or technology that does not apply to what we need
in the team. Let us say we are looking for “A junior front end web application
developer”. A seasoned C developer with 10 years experience can not instantly
morph into an advanced front end web application developer"

I think this is a bit contrived. It's a long way from C to modern web
development, but I see no reason why to skip extensive C# experience applying
for a Java shop etc.

Or even experience with a different paradigm (such as functional programming).
Having worked with a multitude of technologies is beneficial for a programmer.
It enhances one's understanding of the craft. It also proves the programmer
has flexed their "learning muscles" a lot, which again is an advantage in its
own right, since learning is a job never done. Even if you have the just right
experience right now, what happens in 3 years?

Of course directly relevant experience should be given clear priority over
"other stuff", but I wouldn't be so harsh as to say it better be skipped
altogether.

~~~
SpunkyMoney
Think i've already replied to this (sort of) here:
[https://news.ycombinator.com/item?id=7994877](https://news.ycombinator.com/item?id=7994877)

------
clubhi
Do you really believe that your 10 years of C# would keep you more efficient
than say...John Carmack...after a few weeks on the job?

If you find a great programmer and they don't have your keywords you shouldn't
turn them away. As long as they are excited about learning a new language they
will be out performing some of your veterans in little time.

~~~
SpunkyMoney
Think I have sort of replied to your comment in another comment on this topic:
[https://news.ycombinator.com/item?id=7994877](https://news.ycombinator.com/item?id=7994877)

------
dmitrygr
I cannot imagine an article more wrong than this one.

* "A seasoned C developer with 10 years experience can not instantly morph into an advanced front end web application developer" \- yes he can. Knowing things on bottom easily allows one to move up. It is the reverse that usually cannot happen.

* "Ignore the usual template based CV padding" \- if you got the resume through an agency, it would have never made it to you without this bullshit. Sad but true

* "You often need specialists and not generalists." \- false Specialists will become useless when that technology is no longer in use (you move form C# to java, for example). generalists will just help you with your next thing.

* "If you are looking for a C# or Java developer. You would expect their CV to contain those keywords, in context quite a few times." \- false. If you have enough interesting things to put in your resume, there is no space to write "java" 1000 times.

* "I would expect to see some of the following throughout their CV; Design Patterns (MVC, Factories, Singletons, ActiveRecord), Classes, Objects, UML" \- who the hell puts "classes" and "objects" on their resme. If i have to explain to you what OOP is and includes, I do not want to work for you!

* "Community participation" \- maybe accurate. Some people do not like handing out their code for free on github, and instead get paid for it (people who contract for a living, for example). Really want to disqualify them?

* "if it becomes the next big thing, this person could be the one to keep your company at the forefront!" \- If you hire based on technology instead of actual understanding (which it sounds like you do) then you will lose long term. Hire people who can actually learn, not those who happen to claim to know the latest buzzwords.

Of all the brilliant people I know, you would have discarded 100% at resume
review stage. Probably not the best of ideas, that.

~~~
SpunkyMoney
"Of all the brilliant people I know, you would have discarded 100% at resume
review stage."

Not really, because no one would tick all the boxes. If they haven't keyword
dropped, then you can't apply that filter. if they have a brilliant track
history then that pulls up the others that have been missed far greater than
if they had keyword dropped.

Unless you're someone like Jon Skeet or Douglas Crockford you can't get away
with an average CV. Those people have ticked the other boxes so much (social
side, conference speaking, etc) which would greatly outweigh some of the other
points which may be all the "junior" has got.

Although, like what that blog posts states, if you were Jon Skeet or Douglas
Crockford you would already have ticked several of those things in that blog
post ;)

Just because I have some pointers does not mean common sense must go out the
window.

So no, the brilliant people you know would not of had their CV discarded at
the review stage.

------
je42
My method:

1\. Take a section of their C.V.

2\. Ask about their strongest points in that section.

3\. Then go deep on their strongest point.

4\. Note their ability to follow your deep dive

5\. Repeat this multiple times

6\. Review notes:

    
    
      - The more sections they have where they can dive deep to a reasonable level the more senior they are.
    
      - The deeper they can go, the more difficult an actual problem in the prospective job can be that you can throw at them.
    

So far, this gave me a very accurate picture of their skill set.

------
chrisbennet
The keyword matching thing is one of my pet peeves. I was discussing a
position once where they wanted firmware AND machine control AND computer
vision AND WPF AND C++ AND SQL for their machine. Now this a machine I could
produce myself from scratch I think. But the client wanted his keywords met I
didn't have them all.

The recruiter had a laugh when I wrote this:

I’m not sure Michelangelo had painted a ceiling before he painted the Sistine
Chapel. “Hmm, Mike I don’t see any ceiling painting experience on your
resume’...”

------
withdavidli
Article missed to ignore gigantic blocks of technologies used. This is not a
good place to figure out what the person is current in.

Side question: I keep hearing that ATS have filtering systems to block and
auto reject candidates' resumes if they don't hit targeted keywords. Would
like to know some of these companies / what the ATS actually is. I have worked
with several ATS systems with several companies and each one always have to a
human going through every single resume.

