Are you lately going through any job interviews or plan to take on, this post might be for you. There have been times where for sure we all have gone through this process once or more because of layoff, better prospects, life events etc. But every time the interview is different. Recently I talked to a bunch of people going through various interviews for a variety of titles, and below is the summation of various questions based on what they were asked.

I clearly remember the dot-com days, the booming economy, abundant new projects, so one could get a project or job with only one telephonic interview. But not it’s the reverse, slumping economy, few opening and too many people competing for the post. So now you go through several rounds of interviews and serial companies before you actually get the job. 

On top of that, big companies like Google, Microsoft etc. and others as well have started asking behavioral and analytics questions to make it more selected. They say they are looking for smart people. This format of the questions may or may not have anything to do with the actual job being performed. So gone are the days where just asked you “Tell me about the work that you have done” and based on that they could decide your capabilities but now they focus more on aptitude similar to test like GRE, TOFEL etc. along with your ability to adapt yourself to the changing world in no time.

Basically, there are four categories in which we can classify the questions that are generally asked in the interviews these days.The order and the category from which these questions can be asked depend on a number of factors and vary from company to company.

Coding, Data Structure, and Algorithms

In this category, the interviewer asks for questions related to Coding Techniques, detailed understanding and use of Data Structure under practical scenarios and Algorithms that help to efficiently solve a given problem. The goal here is to test your basic programming/logic skills as how you would solve a given problem efficiently.

Some of the examples are:

  • Swap 2 Integer variables without using any temporary variable?
  • How do you convert an Integer ranging from 0 to 999,999,999 to words?
  • How you pick the min and max no from a list in a constant time?
  • What is big O notation?
  • You have a deck of cards that is already shuffled.
  • Write the logic so that you can shuffle cards and match up with the original deck of Card in minimum no. of tries.

Apart from that, they may give you a written assignment to write pseudo code or complete code and return back to them in few minutes or hours depending on the complexity.

Software & Language & Design & Domain Specifics

In this category, the interviewer asks for questions related to Software that you have worked on, fundamentals of programming language and your domain knowledge. The goal here is to make sure you can solve a given problem in the language that you calming to be an expert in along with the key features/uses of various software technologies that you are conversant and finally what is your domain knowledge level.

Some of the examples are:

  • What are Object Oriented Design Principles?
  • How does one parent thread get notification from the child thread?
  • What is Thread Local? And how is it used?
  • What are dynamic proxies? What are its uses?
  • What are all the design patterns you have used?
  • What are anti-patterns? How do they help us?

Attitude, Behavioral & Personal

In this category, the interviewer asks for questions related to your attitude towards life, technology & job, your behavioral instincts in various situations and your personal situation. The goal here is to make sure you have a positive attitude towards work; you can be a team player and fit well along with your personal satisfaction.

Some of the examples are:

  • How would your boss think about you?
  • Do you like to do unit testing?
  • What do you think about Documentation?
  • What do you think about refactoring?
  • You rival company has made a competing software how would make convey to the customer that your product is better?
  • How can you compete with other people?
  • How would you resolve a dispute between you and your peer?
  • How would you rate yourself in XXX or in general?
  • Why do you think we should hire you?

Most of the job seekers are not prepared for these types of questions, so they cannot reply fluently with better examples. 

Problem Solving & Analytics

In this category, the interviewer asks for questions that are related to job or you but these are generally difficult problems that mostly you would not have heard off.  The goal here is to make sure you have a positive attitude for solving these and more importantly how do you break down the bigger unknown problem and attempt it to solve it with the given constraints.

Some of the examples are:

  • At what speed do you have to run in order to able to see the sun all time?
  • You have an array of words, find out all the anagrams?
  • How would you reverse an array?
  • Let's assume you don’t FORTRAN, How would troubleshoot a bug in the program written in FORTRAN?
  • How would you weight a Boeing 747 plane without a scale?
  • Solve the towers of Hanoi?
  • How would you move the Mount Everest?
  • Why is the manhole a circle and not a square?
  • You have an egg. Find out the min no. of floors from where if an egg is dropped will not break?

Again keep in mind you are not expected to solve this, you approach, estimation power and approximation is what is being looked at.

Finally, I think one should give time to prepare before going for these interviews, focus on these categories of questions, answer honestly and to the point with some attitude and confidence, learn from past failures and just buckle up. I hope this helps, so all the best.