- Paperback: 508 pages
- Publisher: CreateSpace Independent Publishing Platform; 5th Revised edition (August 22, 2011)
- Language: English
- ISBN-10: 1466208686
- ISBN-13: 978-1466208681
- Product Dimensions: 6 x 1.2 x 9 inches
- Shipping Weight: 1.8 pounds
- Average Customer Review: 4.6 out of 5 stars See all reviews (489 customer reviews)
- Amazon Best Sellers Rank: #516,645 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Cracking the Coding Interview: 150 Programming Questions and Solutions Paperback – August 22, 2011
O'Reilly Learning Series
Featured 'Learning' Series from O'Reilly Media. See more
Customers who bought this item also bought
What other items do customers buy after viewing this item?
From the Author
I also know because I've been on the other side of the table, asking candidates to do this. I've combed through stacks of resumes to find the engineers who I thought might be able to actually pass these interviews. And I've debated in Google's Hiring Committee whether or not a candidate did well enough to merit an offer. I understand and have experienced the full hiring circle.
And you, reader, are probably preparing for an interview, perhaps tomorrow, next week, or next year. You likely have or are working towards a Computer Science or related degree. I am not here to re-teach you the basics of what a binary search tree is, or how to traverse a linked list. You already know such things, and if not, there are plenty of other resources to learn them.
This book is here to help you take your understanding of Computer Science fundamentals to the next level, to help you apply those fundamentals to crack the coding interview. Because while the fundamentals are necessary to land one of the top jobs, they aren't always enough. For countless readers, this book has been just what they needed.
About the Author
Gayle Laakmann McDowell is the founder / CEO of CareerCup.com and the author of The Google Resume: How to Prepare for a Career and Land a Job at Apple, Microsoft, Google, or any Top Tech Company.
Of these top companies, she has worked for Microsoft, Apple and Google, where she gained deep insight into each company's hiring practices.
Most recently, Gayle spent three years at Google as a Software Engineer and was one of the company's lead interviewers. She interviewed over 120 candidates in the U.S. and abroad, and, as a software engineer, led much of the recruiting for her alma mater, the University of Pennsylvania.
Additionally, she served on Google's Hiring Committee, where she reviewed each candidate's feedback and made hire / no-hire decisions. She assessed over 700 candidates in that role, and evaluated hundreds more resumes.
Gayle holds a bachelor's and master's degree in Computer Science from the University of Pennsylvania and MBA from The Wharton School.
If you are a seller for this product, would you like to suggest updates through seller support?
Top Customer Reviews
My education is in computer science, and I have been writing software for about 10 years, but that's not enough for interviews these days. They will grill you repeatedly with varied problems, and see how you handle the pressure. I picked up this book mid-way through my interview process for a handful of software jobs. While I am confident in my ability to interview well from a personality perspective, the technical parts of the interview have always stressed me out, and frankly, I'd gotten a little cynical about the whole process.
The problems in the book are cool, but you can find plenty of problems for free online. It's really everything *around* the problems in this book that make it great. The book starts by explaining the "why" of technical interviews, the peripheral stuff, such as how to dress, how to practice for non-technical questions, how to break down problems, how to write good code, and how to respond to rejection and acceptance. Then it breaks down technical problems into a series of categories, such various data structures (arrays, trees/graphs, linked lists, etc), object oriented design, and mathematics and probability.
What helped me more than anything, though, was the breakdown of the "why" of technical problems. In one of my successful interviews, I was presented two purely mathematical physics problems. In both cases, I knew generally how the solution would work, but in one case, I couldn't remember the formula, and in the other I knew the principle of the algorithm, but not the execution. In both cases, the first thing I did was confidently look at my interviewers and say "I'm going to need some help with this one." Then I proceeded to work through the problem with their help and hints, exhibiting collaboration and courtesy. This book helped me get to that point of not freaking out when I know I don't know the solution--it's not just about answering correctly, it's about how you work through road blocks, confusion, walls, and frustration.
Fortunately, Gayle Laakmann McDowell's "Cracking the Coding Interview" goes a long way towards making the reader feel comfortable with answering technical and behavioral questions that inevitably appear in technical interviews. There are other books like hers, namely Elements of Programming Interviews: The Insiders' Guide and Programming Interviews Exposed: Secrets to Landing Your Next Job. "Elements" doesn't explain behavioral questions as well, and the technical questions are much harder than any I've ever seen in an interview. Whereas in contrast, "Exposed" had questions that were a bit too easy.
Whether you are a recent graduate or an experienced professional, this book is invaluable to helping you ace the interview. The market has become extremely competitive. I have been interviewed by people who have been at the company 20+ years who have said that they probably wouldn't have gotten the job if they had to interview in today's environment. This isn't a bad thing, as programmers get paid way more these days. But with the pay comes competition, and success in programming interviews is a matter of preparation, not luck. Do yourself a favor and get this book.
1) There is only one page info per company e.g. Facebook, Google. If author could write more about the companies and what to expect it will be useful.
2) Each topic covers only few examples. More examples and homework material along with specific hints (complete solution is not required) will be a great addition. That way student can practice and master all aspects of topic.
3) As per my experience (onsite at facebook, amazon), graph problems are asked in most of the interviews and this book provides less attention to graph problems.
4) More material on system design or OO design problems.
Overall the book is must read to get the gist of technical interviews asked in companies like Google, Facebook.
This one is Great, has many many good pointers for going in to relatively any kind of technical, managerial, or leadership position.
Good review of the Algorithms, and good to know what the companies are looking for & expecting you to know...
Except for maybe the guidance on being able to write a complete complex program, without any errors, (logic or syntax) and it being able to run the first time, perfectly... I've been doing software 15 years, and another 20 years in the military in High Tech Avionics... Her one expectation there is rather ridiculous, to say the least....
That would be synonymous with asking a test pilot to demonstrate how to take off or land his aircraft safely, without consulting the checklist....
Most Recent Customer Reviews
Solution are explained very well and without excess verbiage.Read more