Please navigate to the bottom of the page for Table of Contents

Wednesday, May 11, 2011

Introduction to technical interviewing

Yes, you can love interviews. I do. Both from an interviewee perspective and from the interviewer angle. I just love the challenge! Ability to think on my feet, talk to people, get different perspectives to the same problem, etc. But this didn't happen overnight. To become a good interviewer, you first need to learn to become a good interviewee. Same age old concept, right? To be a better boss, you first need to be a good report.

These thoughts drove me to write this blog series. There are hundreds if not thousands of web sites that talk about programming interviews. Many just list a bunch of questions. Some rely on their readers to answer these questions which may not necessarily be correct. Almost none take the pain and effort it requires to teach how to become a better interviewee. None teach you how to be an awesome interviewer.

That is the goal of this blog. To teach you, prepare you, help you, and guide you for a better, more pleasant interview process; from both sides of the table.

Now you would (or should ask): Who are you? How do you think you are qualified enough to advice me for preparing for an interview. Fair question. A little about myself. I am a veteran of the software industry. For last 15 years I have worked from large enterprises like Microsoft, Verifone to mid-size businesses to startups. I have been a developer, tester, manager and an executive. I have conducted 100's of interviews, both technical and non-technical. I have a track record of hiring stunning employees. I think that should be enough to convince you that you are in good hands. If not, i would still urge you to read further and evaluate the content yourself.

There are many facets to an interview. The whole process varies from company to company. Initially this blog will focus more on the technical part of the interview process. We will go over various technical areas of an interview. We will cover problem solving, architecture, white boarding, thought process and various programming languages. In addition, we will also cover the traditional interview questions as well. Later on in the series, we will focus on the bigger picture, the whole recruiting process and talk about specific companies interview processes.

We would LOVE to get your feedback. What you liked, what you didn't like, specific areas you would like us to focus on or even answers to specific questions that you were asked but couldn't answer.

Happy reading!


  1. Hi Nikhil Singhal,

    Thank you for ur interviewing series. Hope can see more challenging interview question come out.


  2. post some good questions on design pattrens

  3. post question on javascript functions on DropDownList Control

  4. That is fine but how can we evaluate who is best by just asking some random questions. I am interviewing from many years but sometimes its very difficult to justify only on the basis of some questions.

    1. Good question. Yes, it is hard to figure out based on just a few questions. What you need to look for is the candidate's ability to think on her feet, her approach, attitude and a general fit.

  5. I'm happy to read this article.Thanks for your information! Keep sharing..
    erp in chennai | cloud erp software in chennai

  6. I found a lot of interesting information here. A really good post
    office 2010 professional plus key deutsch

  7. HI There,

    Allow me to show my gratitude bloggers. You guys are like unicorns. Never seen but always spreading magic. Your content is yummy. So satisfied.

    Well, it's been a while since I started coding in Java. I've learned a lot of things, and I want to do what I feel like is my calling. That is developing video games.

    So I'm asking you guys for a bit of advice. Is there any good and detailed tutorial that'd be a great reference as well for game programming with Java? I'd appreciate it if it explains a lot of technical terms and just a great place to get me started.

    Once again thanks for your tutorial.

    IIrene Hynes

  8. Aloha,

    Zoooooooom! That’s how speedy and easy this read was! Looking forward to more of such powerful content on Introduction to technical interviewing

    In a programming languge, we declare variables as follows:
    var name1,name2,.... : integer;
    othername1,othername2,... : real;
    otherothername1,... : boolean;
    other4name1,... : char;

    (a) Write a real life example of a variable declaration in this language.
    (b) Construct the syntactic diagram (this is about circles,squares and arrows
    and pretty frustrating, arrgh!)
    (c) Define the variables in Backus-Naur form.
    (d) Write the associated LEX program in C.
    (e) Define the tokens, lexemes and patterns existing in this process.
    (e) Define a formal expression regarding variable declaration in this language
    and construct the relevant finite automaton.

    Super likes !!! for this amazing post. I thinks everyone should bookmark this.

    Irene Hynes