Core Technical Interview Questions

Problems for Software Engineering Mastery

Computer Science is no more about computers than astronomy is about telescopes. Edsger Dijkstra, recipient of 1972 Turing Award

About the sources

As a software engineer, I've been fortunate enough to do a tour of duty or high level interviews in some of the best technology companies in the world at their prime time, including Microsoft, Amazon, Google, Facebook, and several startups I joined or founded. At many of these I've also interviewed now hundreds of engineers from the other side of the desk (or whiteboard).

It has always been surprising to me how perhaps only 10% of interview candidates know what to expect. Most candidates are surprised by the types of questions asked in an interview, and try to deflect them as "this stuff only mattered in college." Instead, they think "getting through the interview" depends on how solid your social connectoins are at the prospective company. No! Honestly no! References matter for getting to the screening interview and in some cases even past it, but that's not what gets you through the typical 5-hour technical interview!

I've put together sample material for you to study if you're headed to a technical interview. If this stuff seems hard, invest a few bucks and a few days on an algorithms book. Take 2-4 weeks to study. It's a lot easier than resisting. This was true for me, for my friends, and hundreds of people who succeed or fail before the process has even begun based on their level of openness to the idea that fundamentals are indeed going to be the core subject of the interview. Success happens when preparation meets opportunity.