Friday, February 11, 2005

Interviews response

My Friend Narasimha spoke about interviewing at
I find it very interesting, given that I have taken hundreds of interviews and attended quite a few (many times for the kick or out of optimisim or to learn something and/or check my current skills :-))

Here is his list

  1. Do not get too technical (There is google for this)
  2. Try to find out if the candidate is passionate about what he has worked on
  3. Ask some questions which probe his analytical ability
  4. Ask about academic projects.
  5. Probe whether he understands some concepts about source control, unit testing
  6. Ask whether he has uses google :)
Let me add a few more points

  1. See if the candidate is capable of working independently
  2. Don't expect him/her to know the obscure details of the language he/she uses for programming. After all a programming language is just a tool
  3. Check his/her learning ability and flexibility and the willingness to adapt to new technologies
  4. Check to see if he can tell you the reason for leaving his current job
  5. Many more to come
What I find very surprising from my experience is that 95% of the people cannot write any algorithm to sort a list of arrays, 80% of the people need help with binary search and 95% people do not understand recursion. I would like to add more statistics here soon


Rajesh said...

Hi Balbir,

I would really interested to get the source of your stats. Besides, more details like, 95% of what level of users/pros etc ?

I agree, there are many who claim to be 'Developer' without adequate technical base, but 95% ( I assume of developers)is way to high for recursion.

Balbir Singh said...

Hi, Rajesh,

I will post more stats here later. But believe me on the 95%. This might not be true for users exposed to solving a particular problem, but if you frame a new problem that the user has not encounterd, 95% of them cannot solve it. About 15% might get close with some help.

Raffi said...

Common guys,
Don't waste the time in asking the same old algorithms and swaping programs in teh interview. Rather ask the candidate to give a solution for the solution for a real business problem or simulated business problem.

Balbir Singh said...

Yes, we do not. But they act as starting points to probe further - to understand what the candidate knows versus what is understood.

Dynamic programming for the binomial coefficient

More fun things, this time with some visualisation of what happens when memoisation is used and what happens when we don't. I don'...