My name is Subhash.K.U. I am the Principal Mentor at SUBHASH PROGRAMMING CLASSES, Bangalore. I have been teaching students how to code since several years. This blog will be an eye-opener for all those who are preparing for their IT programming interviews.
‘WHAT’ is easy ! ‘WHY’ makes you an expert !
Let us take an example from our daily life. Assume, you have a severe stomach ache. What would you do? First step is to talk to your family members or friends about it. What would they do? They would probably give you all possible reasons (actually guesses) for “WHAT “ caused the stomach ache. Like – Gastric problem, Ulcer formation, etc. None of them would give you a reason “WHY” the pain is very severe. The only person who can tell you WHY the stomach ache so severe is the Doctor. That is, the WHAT factor can be told by an inexpert. But, the WHY factor can be told only by an expert. An expert in any particular field can answer you both the WHAT factor and also the WHY factor. The high-performers will always give you a WHY factor for any problem.
Long back, while I was working with GE Healthcare as a Design Engineer, I was asked to interview a candidate who had 6+ years of programming experience in a Multinational Company which is also a product based firm. His resume indicated that he is a C/C++ developer. He looked over-confident. I offered him a seat and made sure he is comfortable before beginning the interview. I began by asking him to give his personal introduction and also to touch upon his professional experience. Having done that, I asked him if he is comfortable to begin with the technical round of interview. After a strong yes, from his end, I began by asking the first simple technical question on C++ – “What is the size of an empty class in C++ ?”. It’s 1 byte came the quick reply. But, he did not expect my next question to be on the same previous question. The second question was “Why is it 1 byte ?”. He started trembling. His face told me that, he does not know the WHY factor for the question. He tried giving all possible wrong answers just to get away with the question. It is not just this question, but for several other questions too, he knew the WHAT factor, but never understood the WHY factor. And, for that reason, unfortunately, I had to reject him.
I have come across several thousands of students whose intention is just to crack an interview. Their strategy is to browse the internet for all possible interview questions on the previous day of the interview and try to cheat the interviewers by their WHAT factor knowledge. But, unfortunately, they do not understand the fact that, interviewers are least bothered about your WHAT factor knowledge, rather, they are looking for mainly at the WHY factor.
To become a high-performance programmer, it is not just enough to know the WHAT factor of any particular topic. It is very much mandatory to understand the WHY factor. For example, talking in C language, if you say me, the only compile time operator in C is sizeof(), then you should able to answer, WHY do you call ‘sizeof()’ as a compile time operator. WHAT is told by all, but only an expert in that subject can answer the WHY .
To become a High-Performance Programmer, you need to be an expert in a particular topic. The only thing that differentiates an expert from an inexpert is the knowledge of WHY.
If you are starting today to learn a new programming language, when you come across any topic, keep asking yourself, “WHY is this topic working like this ?” And you keep finding answers for all that. That is the way you can become an expert.
Focus on “WHY” factor along with “WHAT” factor !
“An economist is an expert who will know tomorrow why the things he predicted yesterday didn’t happen today”
– Laurence J. Peter
Subhash.K.U, Principal Mentor, Subhash Programming Classes