jump to navigation

Tech CVs: the lies ! the lies ! July 19, 2006

Posted by Imran Ghory in recruitment, Software development.
trackback

There’s nothing more likely to get you thrown out of a job interview than it becoming obvious that you’ve lied on your CV, coming a close second is coming across as completely incompetent in your area of expertise.

So you would hope that it would be common knowledge not to put things down on your CV which you don’t know about. I can’t imagine taxi firms get applicants who think having sat in a car qualifies them at drivers, or people claiming to be French translators due to having slept through 5 years of french lessons at school.

Yet IT seems somehow different…there seems to be an obsession with having magic words on yor CV. As if having “J2EE” or “XML” will turn you from a Clark Kent candidate into a Superman candidate. Sure having those keywords may get you that interview, but once they find out you’ve lied there’s a good chance you’ll get blacklisted from that company forever.

And if you’re applying through a recruiter say good-bye to all those juicy high-paying jobs sitting on her desk. One of the most important part of a recruitment consultant’s job is maintaining a good relationship with her clients (the companies, not you, who do you think pays her?) – and if you’re pissing her clients off she’s not going to risk letting you interview with her best clients.

For some reason the worst offenders seem to be the newly graduated, i’ve had graduates claiming C experience not knowing what “printf” is, I’ve had graduates with 3 years Java experience not knowing what a JVM is. And to take the mick I’ve had a candidate who put Python on their CV who when asked about it answered “Oh I don’t know Python – but I was planning to learn it when I wrote my CV”.

I’ve come to the conclusion that one of the main problems is that candidates especially junior ones might think that they know more than they do, simply because it’s hard to tell how much you don’t know unless you’ve been in an enviroment surrounded with people who know a lot more than you.

So to help solve the problem I’ve come up with a list of common tech skills and languages people put on their CV along with the minimum level of knowledge I’d expect to associate with it:

  • Programming in general
    • Understand the different types of programming languages and their advantages and disadvantages.
    • Understand variables, function calls and recursion.
    • Understand the difference between assignment by reference and value and passing by reference and value. And how this applies to your favourite language.
  • Object-Orientation
    • Understand the key concepts of OO – especially encapsulation, inheritence, polymorphism.
    • Know the advantages/disadvantages of inheritence versus composition.
  • Design Patterns
    • Know the easier design patterns iterators, singletons, etc.
    • Have knowledge of the gang of four book.
  • C
    • Know standard I/O, know how to read parameters from the command line
    • Understand pointers
    • Understand dynamic memory allocation
    • Understand the scope of variables
    • Understand the difference between preprocessor, compiler and linker
  • C++
    • All of the C stuff
    • Understand the virtual keyword
    • Know what parts of a class a compiler will provide by default and what the default ones do.
    • Know what a constructor/destructor are and when they’re called.
  • Java
    • Know what the JVM is and what it does
    • Understand roughly how garbage collection works
  • Python
    • Understand the importance of indenting
    • Why some numbers are immutable
    • Tuples, sets, dictionaries,etc.
  • XML
    • The advantages/disadvantages of using XML (say versus a fixed-length encoding system)
    • The advantages/disadvantages of the SAX and DOM models
    • How to parse XML using your favourite languages/libraries
    • Know what XSLT is
  • Unix
    • Know how to use the console for day-to-day file handling
    • Understand piping and redirection of inputs/outputs

I think that’s enough brain-dumping for now….but I’m sure I’ll be back to add some more later on.

So if any of those had you thinking “do I really know the stuff on my CV” perhaps it’s time to brush-up your word processing skills….

Advertisements

Comments»

1. Paul Mendoza - July 20, 2006

I know that I’ve got friends who are in school with me who think that they’re really great programmers because of how they’ve done in the classes they’ve taken but have almost no real work expierence which I find amusing. I’m still in school but have been doing internships each summer and working with other programmers in a company, it’s pretty easy to see who the really skilled coders are and realize how much I don’t know. I think that my friends think they’re great programmers because they were so much better than the rest of the people in their classes.

2. Binil Thomas - July 20, 2006

As for every story, there is an other side to this one too.

Many recruiters seem to explicitly look for buzzwords in a CV – “we are looking for people with n number of years of experience in Struts (ur favourite framework here)”. Very few recruiters seem to appreciate that a programer who knows WebWork, Tapestry etc might be able to pick up Struts in a few days. I am not taking about actual people doing the interview; I am talking of their “support staff” – people who aren’t programmers themselves, but who “screen” the CVs.

When the recruiting industry is geared towards such malpractices, smart people – and there are many smart people do look for a job – will definitely find a way around it. And that “way” might be in adding buzzwords into their CVs too.

Furthermore, many job postings are a litany of technologies which the company had used, are using now, and plan to use in distant future. If you are planning to hire someone who is, say, 22 – you should not ask for experience which cannot be obtained in more than 5 years maximum – dont ask for expertise in Unix, C, C++, Python, XML and Java! Clearly state the must-have and desirable skills seperately.

I have changed jobs only once in my 7-year programing career; and I do help in recruiting in my current job. At times, I do get frustrated when I find 20 minutes into the interview that it is a waste of my time. Yet, I think this situation did not happen overnight – it must have taken hundreds of pompous job postings to get our industry into this shape.

Your post addresses one half of a solution. The other half is that employers should carefully scrutinize the job postings they make, and stop grepping through a CV for technology buzzwords.

3. Bill Mill - July 20, 2006

Binil – you said everything I wanted to say, as a current job seeker.

4. Tayssir John Gabbour - July 20, 2006

Tech advertisements: the lies ! the lies !
Tech salespitches: the lies ! the lies !

There’s a lot of blame to throw around, unfortunately…

5. dalroth5 - July 20, 2006

I would also add that it takes considerable strength of character, and self-confidence, to face down an agent who is trying _really_hard_ to persuade you to interview for something you know you’re not able to do.

The agent is desperately trying to find anyone from their database who even _might_ fit. He knows that contractors pick up new skills at many projects. He knows that all he personally knows about those skills are the buzzword names. IOW he knows that he doesn’t know very much about who will fit. So he has to ring around and ask. Sometimes the asking turns into persuading.

If you’re a contractor you absolutely _must_ resolutely resist this pressure. Your reputation, and therefore your living, depends on it.

Younger people find it very hard to do this. It means learning how to say ‘no’ very firmly. This does not come naturally to anybody.

There have been times when I’ve had to tell an over-zealous agent that I definitely will NOT turn up for an interview they’ve already booked because they decided they could stampede me into it. At such times there will be egg on a face. Make damned sure it’s not your face.

6. Wizzel Cogcarrier Wizzleton IV - July 21, 2006

Wow, #1 post on WP, and it’s only your second one… day-yam.

7. R Mutt - July 21, 2006

Alternative explanation: people lie because it works.

Not all the time, but in a significant minority of cases technical skills are not tested adequately at the interview. If the one Java guy has just quit and they need a replacement, there may be no-one who can test the skills. Or, they may just fail to test the skills. Or, the employer cares more about aptitude than current skills and doesn’t bother to test the candidate.

Also I think there’s a kind of inflation problem that you also see on dating sites, oddly enough. Some candidates will tell the truth and apply for a few selected cases; others just spam everyone they can and hope to get lucky.

The solicitor gets fed up with the torrent of hopeless applicants, and puts ever-more restrictive criteria on the posting to try to filter them out. In practice, this filters out the careful candidates, but does nothing to deter the spammers, who aren’t really reading the postings anyway.

You end up with a situation where the requirements are ludicrously over-ambitious; and candidates just start to ignore them anyway.

8. Peter - July 21, 2006

I’ve been interviewing people in the last two weeks for a developer position and I think there was no applicant whose CV would not have a fake claim. Anyway, I do not bother, as long as I see a wide general interest in programming, passion, ambition or something that makes me believe that the she is interested in learning, becoming better or something.

But it’s totally disappointing when it turns out that she barely qualifies for the minimum requirements (solid Delphi background) *and* she has no idea of Design Patterns, eXtreme Programming or COM. It’s not that she is not familiar, but she never heard of it and she has an BSc/MSc.

We’re not looking for nerds or Paul Graham’s “hacker”, but I think it’s the bare minimum to have at least a visible commitment to programming, especially from a beginner. If you are committed beginner, most likely you done some personal projects. Show them to us in your CV and then you do not have to lie or enrich your CV with technologies you don’t really know.

[ sorry for the venting 🙂 ]

9. Kapil - July 21, 2006

When I gave my interview for a c# developer job, I had written 0 lines of code in c#. Fact is that, I thought c# is a take-off from java and I didn’t like it all that much, so I didn’t care. But when I was looking for a job, all the companies had their projects written in c# for same reasons(follow microsoft).
So, I went for the interview knowing that if any “engineer” took the interview, he or she would find out in a minute that I had only a cursory knowledge of the c#. However, I got selected for the job.

Now at the job, I found out that, no one really knows c#. For most of the developers working in the industry, coding is about cut and paste, following the microsoft documentation and getting the job done.

I think that ability to read english (documentation) is far greater skill required than knowing c# or any other tech feature.

For all the recruiters out there, 1 out of 1000 developers would “know” c#. If you know anything about programming, then you know it is futile to expect everyone to know c#. Don’t say it is a lie when people put c# on their resume, its the only choice they have.

10. Mike - July 21, 2006

I agree with the general point of this post, but I think that many developers feel a need to exaggerate slightly due to the fact that in a competitive market every single other applicant does the same thing. When recruiters are looking at bullet points it is hard to resist trying to meet them.

Hiring managers would be well advised to focus on other parts of the resume other than the language list, such as the specific duties and roles held, demonstrated initiative, and pay history. A phone screen for general competence is also a must.

11. Ram - July 21, 2006

Yes.. an IT company is not like a taxi firm…

If a taxi firm is similar to an IT company this is how they ad will be…..

The candidate

(Experience)

Should have 3 years of experience in driving 1998 Ford Taurus V6 with auto transmission
Should have atleast 2 years of experience driving Large commercial trucks.
Should have 2 years of experience riding bycycles
Should have 1 years of experience in driving motorcycles (preferably cruisers)

Should have worked in a challenging environment where the candidate used all kinds of vehicles to transport his passengers from cities, rural areas.

Competency

The candidate should have a thorough understanding of how an Internal Combusion Engine works.

The candidate should know how to draw engineering diagrams (to draw the engine design or to design a new car)

The ideal candidate also can have experience in smelting the iron ore and producing car parts.

The candidate should be able to provide solutions quickly to the passengers. If the engine breaks down he should fix it immediately or build a new engine.

12. engtech - July 21, 2006

Good list of skills. This is the reason why new grads think they are more skilled than they really are:

http://engtech.wordpress.com/2006/06/11/unskilled-and-unaware-of-it-how-ignorance-gives-misbelief-of-competance-damninteresting/

13. Brian B - July 21, 2006

The best format I’ve seen is to show skill-sets with your level of knowledge listed next to it. If you are a Windows C# god, but haven’t worked with ASP.NET much, this lets the interviewer know exactly what you are capable of doing today and what you could to tomorrow with a bit of training.

14. Ben - July 22, 2006

Your only option is to lie? Rubbish. This sounds like a bunch of grads who simply because they’ve got their degree think they deserve to be senior developers. If the role requires 2+ years of any given technology and you don’t have it the guess what? You don’t qualify for that position!! I’ve also seen candidates lie, get the role above other skilled engineers simply because they were willing to work for $5k, $10k or $20k less. All they are doing is dragging the industry down.

And what will happen to them in two years once they’re not just cutting and pasting code and have reached a level where they can think for themselves and write a method? They’ll think they’re in line for a promotion or a raise because they’ve improved. However, according to the company they’re doing exactly what they said they could do when they started there. So when this candidate goes and looks for another job, what happens? Another grad lies about their skills, offers to work for $10k less a year and gets the job instead.

Kapil, I also take offense to the idea that the industry is about cutting and pasting! I’ve been a C# developer for over 5 years now and have worked hard to become a team lead. If I found during a code review that a new hire had lied about their skills and was cutting and pasting they’d get their first of three written warnings (if they were still on probation I’d just tell them not to come in tomorrow) on their way to being unemployed and blacklisted by _every_ recruiter we use!! If any of you have lied I hope you all get caught out for the frauds that you really are.

15. jean - July 22, 2006

I find your posting very intresting, I myself have over 6 years of experience from system admin to it security, add to that programming to db design. It is how you get the work done, not the amount of language you have under your belt. It is infact very easy to learn a language, but how you implement is the point.

Regarding the interview, getting through the interview is based on many factors like payscale etc

http://www.irin.co.uk

16. santhoshraj - July 22, 2006

This posting is really good. Its very interesting and informative.
Its very common with people to put all types of stuff in there Cv’s just to make it look good.By the same time one should be absolute with what has been mentioned in their Resume’s than to be relative or be little familiar with the Technologies. So before you mention anything incorrect or irrelevant please think Twice..

17. Dimitris Staikos - July 24, 2006

The funny thing is that in order to screen out candidates that are lying or outright incompetent you have to make some really “silly” questions at the beginning of the interview, and guess what… that makes you look really silly to serious candidates, at least for some crucial moments.
Having done several interviews (being the interviewer) I have seen times and again the look of surprise and disbelief on a candidate’s face when I ask “Do you know what binary search is?”
Certainly at that moment they think that they’ve just wasted an interview, and the company has sent a moron to interview them. Then I have to explain that “hey you know we get lots of people coming for interviews who don’t even know what binary search is, so you know I have to ask some really basic stuff before we move on to the more advanced”.
My experience is that however promising the candidate looks you better ask the basic stuff as well. It is never a waste of time.
Probably the funniest incident I ever came across was a guy applying for a C++/MFC position. When I asked him to sketch for me on paper a function in C that takes as input an array of integers and returns their sum he froze for about 5 seconds and then said… “Could we arrange an interview for next week so I can take a better look at my notes?” What can I say? 🙂

18. Paul - July 31, 2006

Agree with Binil.

My favourite illustration of this that a job agency person said to me was:

“Well, I see you have done quite a bit of XSLT. But tell me, have you ever done XSL?”.

Most job agency people do a lot of keyword matching (coupled with years experience) and have no idea what XSLT, XSL or any other technology really is.

19. Imran On Tech » Who needs good software developers anyway ? - August 7, 2006

[…] One of the interesting replies to my previous post on developer recruitment was a claim that shocked many of my other readers – the essence is captured in the following quote: “For most of the developers working in the industry, coding is about cut and paste“. Shocking maybe – but realistically it’s true. […]

20. Buu Nguyen’s Blog » Blog Archive » Tech CVs lie!!! - January 30, 2007

[…] wrote that people often cheat in their CVs by enumerating things that they don’t really know about. He also suggests basic sets of […]

21. Paul - February 24, 2007

What do you mean by “Why some numbers are immutable” under Python? All numbers are immutable in Python. You’re fired!

22. binil - July 15, 2007

Here is a funny post on the other half of this problem.

23. Chemakh - February 3, 2008

Salut tt le monde, pour votre cv essayez ca http://www.smart-http.com/mon_cv+index.htm

24. Paul - March 27, 2008

“For most of the developers working in the industry, coding is about cut and paste“. Shocking maybe – but realistically it’s true.

So its better to type all your code out over and over again rather than say, use the clipboard? That’s just silly! How does being an inefficient keyboardist make you a better programmer?

25. sk - January 10, 2010

Hey, Nice post. I have researched some Excellent C#.Net interview questions and answers

26. Andy - January 15, 2011

Employer job descriptions: the lies! The lies!

27. Eldridge Blute - February 23, 2013

I’d must examine with you here. Which isn’t something I usually do! I enjoy reading a publish that will make people think. Also, thanks for permitting me to comment!

28. Veronika Glanville - March 6, 2014

Good web site! I really love how it is easy on my
eyes and the data are well written. I am wondering how I might be notified when a new post has been
made. I’ve subscribed to your RSS which must do the trick!
Have a great day!

29. Celinda - March 28, 2014

Controversy relating to the World Cup has not,
nevertheless, been constrained to South Africa by itself.
Neighboring Zimbabwe, hoping to funds in on the celebration, presented to supply instruction
amenities to browsing teams. The only taker was
the North Korean staff, which was slated to use the stadium in the
southern city of Bulawayo. This stirred a heated reaction
from local people who bear in mind that it was the North Koreans who skilled the device that
was concerned in the brutal killing of some twenty,000 Ndebele in
that location during the purges of the nineteen eighties.
At this writing, this situation has nonetheless not been settled.

30. Rosario - May 9, 2014

Post writing is also a fun, if you be familiar with after that you can write or else it is difficult to write.

31. jak wysłać pit przez internet - September 12, 2014

This is the right blog for anybody who would like to understand this topic.
You know a whole lot its almost hard to argue with you (not that I personally
will need to…HaHa). You definitely put a fresh
spin on a subject which has been written about for many years.

Excellent stuff, just great!

32. rozliczyć pit przez internet - September 13, 2014

My family all the time say that I am wasting my time here at net, however I know I am getting
familiarity every day by reading thes fastidious articles or reviews.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: