Interview Tip and Resources

There are tons of suggestions/books/tips on how to study for the interview. Here is my 2 cents..hope you find it useful..

-------------------

These are some of the books and websites I have found useful for interviews. In my opinion, for most people (including me) its about training your mind to think about these type of questions and how you will solve them in the interview.

You will also be surprised that once you train your mind to solve those type of questions, you will also try to apply that type of thinking in your day to day coding as well. Hence, I don't consider them to be just interview questions, I consider them something which will help you in the long run.


Books:

Programming Interviews Exposed (Link to amazon)

Cracking the coding interview (Link to amazon)

How to Move mount Fuji .. (Link to amazon)


Websites:

Here are a couple websites I will recommend:

http://www.careercup.com/

http://www.geeksforgeeks.org/

There are tons of blogs written by people, so you can probably check those out too.


Tips for interview preparation:

It would be helpful to chalk out a path of how you want to study. There can be tons of things to study and it can be overwhelming. So depending on the companies, job positions you can decide how you want to proceed.

The following can be one approach you can take. As I said above, depending on the position you can judge which part you want to spend more time on.

1. Data Structures:

Even if you have been programming every day, I would help to brush up on some data structures basics before going for an interview. In most cases revising these data structures should suffice:
  • Arrays
  • Linked Lists
  • Binary Trees
  • Heaps
  • Hashtable
It is important to know when(in what situations) to use these data structures.

2. Problem Solving / Coding Questions

You can probably now start with the above books/websites

3. Design/ Architecture

It is a good idea to show you have some software design and architecting knowledge. You can probably do the following topics:


  • Abstract class vs Interface
  • Design Patterns (Singleton, factory, ....)

Also practice some "How will you design xyz" type of questions. These are pretty open ended questions and try to use the above to show a good design

4. Misc questions

Recursion, multi-threaded, database basics, etc

5. Language specific questions

If you are interviewing for a position which requires detailed specific language knowledge, then you should probably spend some time studying/ recollecting details about that language.

6. Brain teasers/ Puzzles

Although most companies have now stopped asking brain teasers, it might be a good idea to try to solve a few of them. Its challenging and fun and you don't have to think its more an interview!

As mentioned above, here is a good book for puzzles:
How to Move mount Fuji .. (Link to amazon)


All the best!


P.S. I am sure I might have missed something, so please free to comment and I will add it to the list.

No comments:

Post a Comment