🚀 Crack the Code, Land the Job!
Cracking the Coding Interview is a comprehensive guide featuring 189 programming questions and solutions designed to prepare candidates for technical interviews in the software industry. It covers essential topics like data structures, algorithms, and provides expert insights to help you succeed.
A**W
Very good
Great
R**N
This book helped me get job offers from Google and Amazon
I’ve been meaning to review this book for a while. Last year I got laid off from my startup and found myself feeling anxious as I haven’t had to look for a job for several years. I bought this book along with two others, but this was the only one I really spent time on. The first third of this book provides specific information about companies along with example problems. The last two thirds are problem solutions with explanations. I found everything valuable. I didn’t write out complete solutions for most of her example problems. If I thought it was obvious I skipped it, but whatever you do don’t skip reading the solution. It’s here where you can read about ways of solving the problem that didn’t occur to you. For example, if you want to know if two binary trees are identical you can verify this by comparing their preorder and inorder traversals. The only gaps were discrete math and heaps. Heaps appeared frequently in sample questions on Glassdoor. I pulled an old data structures book out to re-read about heaps, but I was never explicitly asked about them during my job search though I did mention them a couple times as possible ways to maintain a priority queue.Information about the companies was very relevant as I live in the Bay Area. I wish I had heeded her admonition about discrete math for Google because I was unprepared for these questions. I would have read the math if it was in the book, but since I haven’t used that math ever in a job I skipped it. During the interview I was able to solve the math problems except I needed basic definitions and one or two hints. For Amazon it was good to know there’s a “bar raiser” because it was obvious when I met the interviewer who wrote out a really hard problem right off the bat and wanted a linear time algorithm. I was speechless for five minutes, but managed to reduce the problem enough where the solution suddenly came to me. I think I would have been unnerved by the question if I didn’t know about this type of interviewer that she writes about. I wish she also covered Twitter and LinkedIn.The book doesn’t talk enough about applying for jobs. I do wish she wrote about job offer contingencies as my first job offer was from a startup who told me it expires in 24 hours. This in turn caused other recruiters to panic. While in the end I got a good job, all in all I hope I’m not forced to do this again anytime soon. I’m just glad I had this book at my side. It was indispensable.
L**X
Good buy
For software engineers job interviews. It should have this if you want to have good interview experience.
E**U
I bought 2 editions because the 6th edition has more problems and is better organized.
The main reason I bought the book is that it closely reflects the status quo of the technical interviews in large tech companies. You probably can do 1000 problems on leetcode in several months and achieve better results. But this book can be done in maybe half of the time and yet does a decent sampling of the typical problems.I have both the 5th edition and the 6th edition. I bought 2 editions because the 6th edition has more problems and is better organized.Four stars instead of five for two reasons.First is about what the book is promoting. The current interview process is far from being perfect. For many of the problems, unless you know the solutions beforehand, there is no way you can code up a decent one within an hour. Some of the problems were even research subjects for years before an optimal solution was found. The book mentions an example, a good candidate whom the author knows very well but just cannot pass the coding interviews. As the author explains, large tech companies can afford false negatives. How to fix the problem? Read the book back and forth and do the problems several times. Then a candidate will greatly increase the chance of landing a good job. But the question is: Will anyone who aces on interview problems necessarily perform well on the job? Will this person necessarily be a good engineer? I do not know. There are definitely false positives too. I am guessing the assumption is that the coding problems we do nowadays on the interviews somehow achieve minimal number of false positives. But I doubt there are actually numbers supporting that claim.The second reason for a star less is the lack of rigorousness. Some of the problems are presented unclear. I have to go to the solution part to figure out what a problem actually means. Some of the solutions are not straightforward. For example, there is a problem calls for topological sort. However, none of the solutions given uses breadth-first search. Why? Some of the solutions have wrong analysis. For example, the subtree checking problem. One solution reduces the problem to checking for substrings. The Java method is String.indexOf(). The author claims the time complexity is O(m+n), which I believe for Java is actually O(mn).Overall this is good book for preparing for coding interviews. A bit disappointed about what has become of the technical interviews nowadays.
Trustpilot
1 day ago
3 days ago