Thursday, October 29, 2009

Why interviews are so tough?

I often hear this - The interview was as if the company wanted me to build a spaceship, and now all the work I am doing is nowhere better than data entry.
Why do companies take such tough interviews during hiring and reject so many candidates when quite a lot of them are qualified to do the work they offer? Being on the other side of the table for quite sometime now, here is my point to view.

The World is full of boring/routine work - Vikas said that in his post Good Work Bad Work, and I couldn't agree more. Call it 80-20 rule, 90-10 or 99-1, challenging work is hard to come by.

Smart people take challenge in doing the boring work in a smart way - Regular people will do manual testing of their code, Smart ones would write automated testing code, Smart and experienced would know when to do manual testing and when to automate. Companies want smart people because they save their own time and teach the world to do boring stuff in a faster way.

Only smart people can solve difficult problems - So you have been doing all this boring work in your project. The project is deployed now. Suddenly the system has started failing consistently. Who is going to dig into the issue and solve it? The IT industry is different from most traditional industries in one fundamental way. Here, there are problems which average people cannot solve in their lifetimes but a smart one can solve in 10 mins. Smart people are troubleshooters. Companies need troubleshooters.

Apart from these, I believe that there is also another important reason related to human psychology. If the interview weren't tough, the candidate would feel it was too easy to enter the organization. During my job career, I took the toughness of the interview as an indication of what kind of peers I would have, and how good the company is in general. And the companies where I got in too easy were never the best places for me to work.

Some tips for a tough interview:
- Open ended questions are asked to judge your thinking. So Think, Think and Think out of the box. If you give a non-stupid answer that the interviewer has never heard before, thats a big bonus. Giving multiple solutions is also a good idea.
- Be prepared to write code on paper. Writing code really means psuedo code, don't worry about the syntax.
- Every interviewer has his own way of judging candidates, so don't panic. I used to ask only 2 questions to a candidate and never expected to get full and complete answer.