9

I recently held interviews of two offshore C# programmers (from India). Both interviews went reasonably well until I gave them a minor programming challenge to be solved in collaboration with me. On a whiteboard. Then both candidates failed hard. Or did they?

First challenge was to write a function that took a string as input and returned a Boolean indicating if the first character in the string was a capital letter. We spent more than 15 minutes on this simple task and the candidate could not even extract the first character og the string. Nor did he reflect on Unicode/multibyte compatibility in the solution.

The second candidate was asked to write a function that took a collection of integers as input and returned the input collection with all duplicates eliminated. This question could spawn a discussion about data structures and complexity analysis. But also this task stayed unsolved after 15 minutes, and the candidate apparently didn't know about complexity analysis, nor about hashing/HashSets.

So, can I conclude that they were both incompetent? I am not sure: an interview can be an incredibly unpleasant situation for the candidate with a lot of pressure and this may very well remove a lot of their ability to reason. Also, at least one og the candidates was extremely nervous. On the other hand: both had a CV with more than six years of professional programming experience, so how on earth couldn't they solve the above two very simple tasks? They were even allowed to solve them in pseudo code. And with me, helping on the side.

In short: what can I conclude about them, if anything at all?

  • 8
    There's nothing cultural about it @Jan... the amount of developers who can't code is frankly astonishing; I've yet to find that birth location makes a difference at all. The interview, however, might - so I'm actually interested in any answers... – Ben Nov 15 '14 at 9:48
  • 3
    I know it's hard to believe but there are plenty of outstanding programmers out there who a) don't do well in front of an audience, b) don't program like a trained seal and c) do better at actual possible programming problems than they do at code golf. – Chris E Nov 15 '14 at 15:26
  • 4
    Except for the unicode part (which is not something that many people deal with regularly), those seem like fairly simple tasks. You have a problem of not screening applicants well enough. – teego1967 Nov 16 '14 at 1:50
  • 8
    OT, but why is it when I go and interview, the first damn question I'm asked is about finding triplicate entries in a billion node linked list, while I read stories about people not finding candidates who can solve fizzbuzz! – user87166 Nov 16 '14 at 12:48
  • 3
    I'm a sysadmin rather than a programmer (though I have programmed in the past, all the way from JCL/CLIST/REXX on a mainframe through the usual suspects like C, Basic, etc.) and its not been unusual to interview programmers for senior/experienced roles whose programming knowledge is less than mine... and believe me, I'm not claiming my knowledge is anything worth having here! It's more than 15 years since I've programmed anything more than your typical sysadmin operations scripts, and I really shouldn't be meeting senior programmer applicants who write worse code than me. It's depressing. – Rob Moir Nov 16 '14 at 16:06
14

What can I conclude about poorly performing interview candidates?

In general they will be a poor fit for your job. At least if we assume that you choose questions relevant to deal with the job and that you are capable of explaining the questions in a proper way. After all even if the problem is based on poor communication: You will need to be able to communicate with them on a daily base, if this doesn't work out, you shouldn't hire them.

My own experience

The market in India/Bangladesh/China for freelancers and programmers is somewhat tough and you as potential employer are thousands of miles away. Guess what? 95% of all applicants will either way directly fake their CV (in writing thinks they have never done) or at least overestimate their skills in a (for European/American standards) unacceptable way.

Disclaimer: I don't mean to insult someone and the 95% are solely my own estimate, but I have been to China and I used to handle stuff like offshore hiring on a daily base. In my honest opinion that is just how it works there. Also developers without coding-skills are pretty common these days in western cultures, too. It's just culturally a little bit more accepted to do that stuff over there.

How to find the 5% that are worth your time?

A possible way is start to search around in social tech networks. For example, the best offshore WordPress developers I hired for any projects came from the wordpress.stackexchange chat. If you start to build out a network that way that people will lead you to other highly skilled developers (they generally like to stay in the same peer-groups).

  • 1
    +1 - I like this because it talks about them being a poor fit for the job they were being interviewed, which is far more objective and to the point than "incompetent". This assumes that the questions were well asked, and relevant to the task being interviewed for, but I think its reasonable to assume a fair level of competence in people asking questions here unless there's evidence to the contrary. – Rob Moir Nov 16 '14 at 16:04
6

I have little professional programming experience outside an internship last year and I can tell you I could answer your questions in several languages I haven't touched since then, let alone the languages I use regularly.

In saying this, A lot of programmers can't program. I have encountered many of those in the position to hire through podcasts or personal interaction who find that many "developers" can't do Fizz Buzz or many other basic programming tasks. Where I did my internship at, they were surprised they could actually give me coding tasks to do so unlike s1lv3r, I wouldn't take this as necessarily a regionally issue - you'll find it everywhere.

Simply put, even though they're in an interview, if they can't do these tasks at all they are duds. Move on and forgot about them.

  • I would say the percentage of "can't do Fizz Buzz" programmers is the same there, as it is here. My point is more, that due to the situation (thousands of miles away, no legal threat - you won't sue them, will you?) it's far more likely to have a huge amount of CV tuning/faking. – s1lv3r Nov 16 '14 at 20:23
  • That's fair enough, point understood. – pi31415 Nov 17 '14 at 6:43
  • pi31415 has it exactly. Ignore everyone making excuses for them. Only 5% of "programmers" can actually code. Just keep testing them. – TheMathemagician Nov 18 '14 at 16:08
  • 1
    The only thing I disagree with here is the 5% number. I think it's actually closer to about 2% of programmers can actually do the job. – NotMe Dec 18 '14 at 15:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.