Thursday, March 1, 2012

What would you expect to see in an interview?

What is the interview process?
Usually to hire a talent, the interview process consists of two part: phone interviews and a one-day on-site interviews. If you are looking for an intern job, most company conduct only phone interviews due to the consideration of budget. Each interview is usually last 45 minutes, and you may consider it as 40 in that five minutes are often used to "chat" that make you comfortable and get a positive experience.

What kind of questions you should expect?
One of my friend share me the following link, which I believe is very useful:
http://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions
The article is written by a senior software developer in Google sharing his opinion (and suggestions) about conducting phone interview(s).

In a nutshell, the phone interview is a "breadth" skill test but not a "depth" code test. Though, some interviewer intends to run their interviews as coding tests, giving you a problem and ask you to provide a solution. This is usually not the ideal case in that you may end up with hiring someone who crams lots of popular puzzles but is actually lack of enough skills at work.


to be continue...

Wednesday, February 29, 2012

What is this blog for?

I have interviewed lots of talent students in my career, and of course I was interviewed by other programmer many times. Some interviews are quite impressing, not because I passed or failed the interview, but because I feel that the questioned I was asked did gauge the skill level and whether I am a good fit of their team or not.

You should notice that, most of big company like Google, asked the interview taker to sign a non-disclosure form. For that reason, I won't (and should not) explicitly share the information like "google asked me this question", bla bla bla... Honestly, knowing a company asked a question in the past help you nothing but only make you more nervous when you encounter an new question in the interview.

Why? To my best understanding, all the companies these days delegate the decision of questions to their engineers. That is to say, there is no so-called company-wide question pools. Engineers usually create their own question pools, and when they move to other companies, so does their pool. So why bother to know which questions from which company.They are not really matter at all.

Then. Why should you keep reading this blog, given the fact that you can easily find questions in the following "helpful" websites:
  • http://www.glassdoor.com -- you can find all alleged interview questions
  • http://www.leetcode.com -- you can find most classical (and difficult) interview questions and their answers.
Here are viewpoints I would like to share and focus in this blogs:

  • Firstly, my purpose is to help you become a better interviewer. That is to say, I believe that some questions are totally useless as interview questions, while some questions are better choices. I would like to discuss why, and discuss the motivations behind an interview question. 
  • Secondly, most engineers in big software companies are really good and thus rarely they throw out stupid questions. No matter you get a offer or not, if all your interviewer asks questions for "beating up" you but not to gauge your interviews. This is a good sign to say NO to the company. Why? If the questions are useless, very likely the filtering process of new hires are awful. If you join the company, very likely you may end up with working with dull guys, which makes the life joyless.
  • Thirdly, and most importantly, through decoding the question, I am helping you to review (or prepare) the skills you need to success in your career. 
 
So, take a deep breath and enjoy the journey with me.