Interview Prep Resources

GitHub stars GitHub forks GitHub last commit

> draft v0.5.3

Preparing for software engineering interview needs time, attention and practice; and to help with that, there are many resources sprinkled all over the internet and bookshelves. Some of them are wonderful and some of them are meh. Browsing through these can be overwhelming.

Therefore, I have tried to create a curated list of resources – these are just some of the good options you can chose from. To help you decide on which resource to try, I have annotated each item.
By no means, you have to go through all of it. I do not claim that, these are the best resources out there either; there must be resources I don’t know about which are even better and there might be some resources which I haven’t included but is useful to someone else.

I would suggest you to go through some of the articles and look at some of the study plans. Then pick one learning resource (book/course/lecture series) and one practice resource. It is best to learn something everyday and practice a bit everyday.

Good luck & have fun!

Table of Contents

xkcd 1293


Here are some insightful articles. All of them are personal takes on interview process and/or how to ace them.

Following articles, are not about how to ace an interview, but these are for the other side of the table; about how to hire a good engineer.

Study Plans and Reading Lists

On Books

There are plethora of books on algorithms, problem solving, software engineering and computer science in general. There are also, as many book-lists. One thing, I’d like to mention is that, picking up a good book is important. In many cases people are in a time crunch. So, you want to study a book which you can cover within a limited time; similarly, you would want to learn enough and understand them correctly.

There are people who have studied and compared a good number of books. What they have to say about these books can give you sufficient insight for picking up the right book.

Book List

Following are some books I studied or vetted and are in my to-read list.

See also: r/cscareerquestions/wiki/faq_books

Algorithms and data structures

Algorithms Refresher

Interview Prep Books

Design & Development

Video Lectures

There are some really good lectures on fundamentals of computer science and some on interview prep.

Online Learning Resources

MOOCs on Algorithm, Data Structures etc.

Interview Prep Courses

Design & Development

Coding Practice

Best way to sharpen your algorithm and problem solving skills is by engaging in competitive programming. But if ACM, TopCoder or Codeforces are not your cups of tea, then you can resort to one of the following:

xkcd 1185

Mock Interview

Doing some mock interview is a good idea. Specially, if you can get feedback.

Cheat sheets

On Résumé

Soft Skills

Official Guides

Software industry is probably that odd industry where they reveal all secrets about their interview process. Most large companies have standardized their interview process so much so that, and they want interviewees to succeed so much that they actively generate and provide prep materials.






From Reddit

Even if you are not interviewing

Since you are here, and I got you reading this far, I am going to share some of my favorite resources. These do not directly help you in acing your technical interview but they are really useful to software engineers in general.

not so random though

2018 © nafSadh
Maintained on GitHub by nafSadh.
Please report issues and add suggestions here.