7 ms·
Official sequel to Cracking the Coding Interview is out
- syntaxing 2y agoI’ve been tempted to get it and curious to hear any review of the book. I decided to get Alex Xu’s Coding Interview Pattern [1] instead which I’ve been really enjoying. [1] https://blog.bytebytego.com/p/my-new-book-coding-interview-patterns https://blog.bytebytego.com/p/my-new-book-coding-interview-p...
- stmw 2y agobunch of them reviews on amazon (which has benefit of showing who actually bought it), here is a very positive one: "This is the best overall resource that I've seen for software engineering job searches and coding interviews. There's a lot of free online resources out there so I was on the fence about buying this, but this is the most high-quality and practically useful collection of tips, tricks, advice, and explanation of relevant CS data structures & algorithms concepts that I've seen. There's also a lot of practical advice on how to approach the job search. This, plus leetcode, would be my most highly recommended resources for coding interviews. I think the content of this book would be relevant and useful from the new grad level through the staff SWE level. It's also a totally different book than the original CTCI (which I also have), not just another iteration of the same thing. I never write reviews for anything, but I felt like I had to for this because I was surprised by how good this is."
- michael_mroczka 2y agoHey, I know Shaun personally, and I think his book is excellent. Our books, despite seeming similar, are very different. His is about recognizing preset patterns, and that is about the extent of it. No outreach advice, negotiation strategies, resume opinions, behavioral help, etc. His book also seems to focus heavily on quantity, as he ends up going through 100+ leetcode problems. I'd heartily endorse his book, but they definitely are more different than similar. EPI is also another excellent book with a very different style. Here is a link to nine chapters of Beyond Cracking the Coding Interview for free in case you're still curious about it: https://bctci.co/free-chapters https://bctci.co/free-chapters
- syntaxing 2y agoWhoa, I appreciate the sneak peek PDF and response! CCTI was my first book I bought for grinding software engineer interviews. I’ll definitely revisit whether to get the new version after reading the first 9 chapters!
- michael_mroczka 2y agoHappy to help. :) The book also has a discord server (link in the free PDF!), so if you have other questions, feel free to ping me there with them! We are about to start the weekly leetcode contest, and there will be a write-up after it finishes on which techniques and templates we've used from the book, which might give you more of a sense of how different it is. Hope to see you there, my friend!
- syntaxing 2y agoYour proactive responses has me sold! Just bought the book off Amazon. I'm looking forward joining the Discord/Leetcode Contest too. It's really hard for me to get my momentum going and hoping the contest will give me the boost I need!
- michael_mroczka 2y agoHey, thanks for the support. You can always reach out to me directly on Discord if you need anything. Nil and I wrote all of the technical content for the book, so we are happy to help in any way we can and do our best to stay available—especially to our supporters! :) I hope to see you there!
- neilv 2y ago> Technical interviews are much harder today than they used to be. Engineers study for months and routinely get down-leveled despite that. Beyond Cracking the Coding Interview, in addition to covering a bunch of new questions and topics, teaches you how to think instead of memorizing. Grinding and memorization isn’t the way in this market (though in fairness, it’s never really the way). With us, you’ll still have to do the work, of course, but we’ll teach you to work smarter. It's like they're doubling-down on the steaming load of BS that is the techbro interview. Please permit me to share my 'review' of the original book, which I made when I gave away my copy on an MIT-internal free-stuff email list. > Date: Friday, October 20, 2023 7:53:39 AM > Subject: [Reuse] "cracking the coding interview" book of satan > "Cracking the Coding Interview" 6th Edition > I literally just opened this book to a random page, about 1/3 of the way through, and the first thing I read on the page was, "You should first ask your interviewer if the string is an ASCII or a Unicode string. Asking this question will show an eye for detail and a solid foundation in computer science." With no hint that the writer was aware of the irony. > However, since some successful tech companies were founded during the dotcom boom by students with no professional experience, they adopted hiring filters based around a cocky student's idea of what is important in software engineering. Then, subsequent startups, without the benefit of dotcom gold rush handing gobs of money to anyone who could spell "HTML", looked at those companies that had a lot of money, and thought "I, too, want a lot of money, so I should mimic whatever that big company with tens of thousands of worker drone employees does." Now we have a whole lot of startups who are filtering their hiring with a mix of fratbro hazing rituals, and attacking anyone who climbs the ladder in the middle of the room to reach the bananas. > This book will tell you not to climb the ladder to reach the bananas. Simultaneously, it will rot your brain, crush your soul, and make you a terrible person when you're later on the other side of the interviewing table and you inflict it upon someone else. > Unfortunately, I have old-school conditioning against destroying books,no matter how offensive and harmful. > TO CLAIM: Please email me and say *which day* you promise you will no-contact pick up, in Mid-Cambridge. > TO NOT CLAIM: Kudos, and maybe you join me in telling companies who recommend this book as interview prep material, "No, thank you". (Epilogue: That copy of the book went to someone who responded, "As a linguist (and ex CS person) who is now considering selling her soul to big tech because academia is not a lot more better, I'd be interested in this cursed book!")
- booleandilemma 2y agoI refuse to read this book and I encourage everyone here to do likewise. Don't support this nonsense.
- stmw 2y agoThis from a user whose previous HN comments included: "this will just encourage the further replacement of American citizens with H-1B's from India who will do whatever upper management demands, because they have no choice. I look around my workplace and see Indians building simple CRUD APIs because allegedly Americans can't? lol." ??!
- Mountain_Skies 2y agoWhat point are you trying to make?
- deleted 2y ago[deleted]
- vunderba 2y agoIf we're pulling comment histories, you have quite a few comments linking to interviewing.io which is affiliated with one of the book's authors (Aline Lerner). Coincidentally, you've also posted pretty glowingly about this book. Do you have any connections to the authors that might be compromising your objectivity?
- michael_mroczka 2y agoIf it helps, I (Mike) don't know who @stmw is. I can at least say they aren't one of the four authors of this book. That said, I don't think the reasonable conclusion to come to when someone is supportive of a product is that they are invested in it. Sure, suspicion is a healthy thing, but for the record you can look through my comment history and see I recommend LeetCode and a coding book called EPI. No compromising connections—I just like the products and let people know about them when I see people talking about the topics. ¯\_(ツ)_/¯
- blindriver 2y agoI don't think this book or any books for that matter are particularly useful for interviews unless you want to learn the extreme basics. However, if you are trying to learn the basics, I'm not sure that this book or EPI, etc. is enough to be prepared for a real interview. The best way really is to grind Leetcode, unfortunately, and using ChatGPT to ask questions and explain answers or topics. ChatGPT is very good at explaining well-defined things like CS topics and LC answers in my opinion. It most likely slurped the contents of this book and you can ask it questions directly so I think that's probably the way I will do it in the future. In addition, the book doesn't seem to cover systems design which is an extremely critical part of the interview process for L4 and above.
- stmw 2y agoThese kinds of books have really progressed since they first appeared -- this one could probably be fairly re-marketed as a two-volume set of 1. an advanced CS textbook and 2. a SWE candidate handbook, especially given the online resources and AI interviewer they have.
- slackware_linux 2y agoThe book is not just basics. I've read most of the technical chapters and it is quite in depth. More so than any online resource. Plus there is the AI interviewer which is free and probably better than trying to prompt chatgpt yourself.
- michael_mroczka 2y agoAgreed. The book talks about niche topics in more depth than most resources online. In addition to all the topics in the book, we're actively releasing free online chapters each month covering more niche topics found in interviews.
- ignoramous 2y ago> trying to prompt chatgpt yourself These days, I can't even be bothered. Sometimes I type 2 words may be 3 and o3 will do all the CoT style prompting on its own. I don't mind the wait. o3 is wonderful in exploring codebases, especially on GitHub Chat.
- AlexCoventry 2y agoIsn't it a bad time to invest in this? If an AI can help you learn the material, it can probably replace you pretty quickly.
- michael_mroczka 2y agoAI can absolutely help you. A lot of the benefits of the book come from the reasoning, though, which AI cannot do. For instance, you might try a question, and the optimal answer uses a heap, but how did we intuit that? What repeatable reasoning steps could we walk through to do that for a different problem? That's what 500 pages in this book is about. XD
- blindriver 2y agoYou are incorrect. ChatGPT will absolutely tell you why the optimal answer would use a heap. I've found that ChatGPT is much, much better than any book resource because it amalgamates answers from everywhere into a coherent answer and you can keep asking questions about it to gain deeper understanding, as opposed to a book where if you don't understand that's it.
- michael_mroczka 2y agoHey friend, totally okay if we don’t see eye to eye on this. No big deal. But just to share my perspective—if you ask ChatGPT to break down a genuinely hard, new problem (not something that’s been around forever with tons of tutorials and blog posts), the explanations tend to stay pretty surface-level. For example, you might get something like, “We need to use DFS because we need to search the graph.” It doesn’t really get into the deeper reasoning behind why that’s the right approach or what led to this decision when others were possible. There’s actually some interesting data on this here: How hard is it to cheat with ChatGPT in technical interviews? Even AI experts point out that parroting tutorials isn’t real reasoning, and that’s still a tough spot for AI. All that said, even if AI improves, I still think this book offers a lot of value. It’s packed with new templates and practical strategies to help you get unstuck during interviews—stuff based on data from over 100,000 mock interviews. No pressure if it’s not your thing, but if you’re curious, you can check out some of the technical (and non-technical) chapters at the link below. They cover approaches you definitely won’t see ChatGPT come up with. :) https://bctci.co/free-chapters https://bctci.co/free-chapters
- realjohng 2y agoThis is a good book but it’s more of a starter step. Not being able to solve the problems (which I think is the common case) should hint to you that deeper review of fundamentals is needed. Unfortunately there are not many resources that teach the fundamentals lucidly, so extensive searching is required.
- optymizer 2y agoAlgorithms by Sedgewick is pretty good for learning the fundamentals, imo, and sufficient (together with the Cracking the Coding Interview book) to pass interviews at the FAANGs I've worked at (and was an interviewer at for years).
- michael_mroczka 2y agoOooh, I'm a BCtCI author, but I admit Sedgewick is the algo expert! His book is more about data structures and algorithms than about coding interviews (related but very different). If you needed to completely learn data structures and algorithms from scratch, I would NOT recommend his book, but instead, his FREE COURSE since it is so much more visual (and free): https://www.coursera.org/learn/algorithms-part1 https://www.coursera.org/learn/algorithms-part1 For what it is worth, taking a course on DS&A is very different than getting good at these interviews for most people. The two are closely related but very different.
- leeny 2y agoI'm Aline, one of the authors. We actually doubled down on teaching the fundamentals in this book. If you've read it, please tell us where we could have done better. If you have not read it, check out two of the technical chapters to see our approach to teaching binary search and sliding windows and let us know what you think: https://bctci.co/free-chapters https://bctci.co/free-chapters
- realjohng 2y agoSorry the opinion was based on the prior version of the book. I took a look at the link. My honest opinion is that binary search is kind of rushed in its break down. On the other hand, I really liked the explanation of the various sliding window problems since that is a topic that is normally not covered in CS fundamentals. I also like the pseudocode -- it reads well. I think a book focused on concepts could serve as a delightful companion to this book. Or simply add the pages. Thanks, i'm sure you will sell tons of copies.
- michael_mroczka 2y agoHey, I'm one of the main authors of the book. Feel free to ask any questions if you have them. :) There are many great resources that have come out since the original CtCI, but we waited to release this until we had substantially new advice to give that is different from other options. TL;DR This book teaches you how to think, not memorize questions. And how to reason about your job search and handle recruiters Here are nine chapters from the book that you can read so you can make your own decisions. They include: - Seven non-technical chapters that walk you through important topics such as why technical interviews are broken, what recruiters won't tell you, why you should not spend a lot of time on resumes, and how to get in the door at companies without a referral. - Two technical chapters covering the two easiest-to-mess-up-in-an-interview topics. Binary search & Sliding Windows. Our new take on Binary Search teaches one template that works for every binary search problem on Leetcode, with only a single-line change you need to remember. The Sliding Windows chapter features 6 unique sliding window templates that make off-by-one errors a thing of the past. https://bctci.co/free-chapters https://bctci.co/free-chapters
- harimau777 2y agoI used interviewing.io's resources for my most recent job search; however: 1. Even once I studied enough to know how to use the more challenging algorithm techniques (dynamic programming, graphs, the more esoteric versions of sliding window, etc.) that still wasn't enough to pass interviews. The time I was given to solve the problems was so short that it would take me at least a month of practice to get fast enough at just one of the techniques. 2. It's difficult to predict what interviewers will ask. In a six month interviewing period I might only get asked a given advanced topic once. I eventually gave up on becoming sufficiently proficient in more than the basic algorithm techniques. I couldn't realistically prepare for each of the algorithm techniques on interviewing.io and I couldn't predict which I was likely to be asked. It was just luck. So I found that the best strategy was just apply to as many jobs as I could and hope that I didn't get asked one of the more advanced topics. In effect, if I'm reliant on luck either way, then I may as well rely on the approach that gives me more time to put in applications rather than studying. I guess my question is what the intended use of this sort of book is considering the world we find ourselves in? That is to say: In an ideal world where interviewers care about demonstrating competency, then taking your approach of learning to understand the basic patterns that make up these questions makes a lot of sense (and would probably make people better programmings). However, in our current world where interviewers demand raw speed, that doesn't seem viable.
- 0xDEAFBEAD 2y ago>Technical interviews are much harder today than they used to be. Engineers study for months and routinely get down-leveled despite that. Is this because of an interview prep arms race, or supply and demand, or what? Is all of that interview prep, and higher standards for hiring, translating into developers who are stronger on the job? Or at least, stronger when the job calls for data structure skill?
- michael_mroczka 2y agoHey there, I'm the Mike (an author of BCtCI). I totally get where you’re coming from—there are a lot of flaws in the interview process, no doubt about it. When Cracking the Coding Interview was originally written, the intention wasn’t to claim, it as a perfect process and to give ideal questions that should be asked. In fact, there are many questions in the original book that I wouldn’t recommend any interviewer use. The real purpose was to shed light on a process that had been shrouded in secrecy for decades, long before the book existed. The reality is, like them or not, these types of interviews aren’t going anywhere—whether or not resources like mine are available. So the real question becomes: Should the process remain some insider-only system where only those with well-connected friends know what to expect and how to prepare? Or should we make it more accessible, ensuring that everyone has a fair shot with similar resources? For me, the answer is clear: transparency and equal access for all. It’s not about endorsing the process—it’s about making sure the playing field is level.
- 0xDEAFBEAD 2y agoThat's fair. I didn't mean to condemn you. Sorry if it came across that way. Honestly I was just curious. I'm in the (apparent minority) of devs who actually like solving leetcode-style problems, so the current system doesn't bother me a ton. I wrote a reply to Aline which applies to you as well: https://news.ycombinator.com/item?id=43145953 https://news.ycombinator.com/item?id=43145953
- michael_mroczka 2y agoNah, I totally understand where you're coming from and didn't feel attacked. I responded to your reply! :)
- fragmede 2y agoand the follow-up guide, How to send screenshots to ChatGPT so it doesn't look like you're copy and pasting the question text. The only coding interview left is "here's the question, here's the code ChatGPT generates, what's wrong with it?"
- ericyd 2y agoI was really excited about the salary negotiation advice on interviewing.io, but it totally blew up in my face when I tried it for my last job offer. According to them this is a red flag of the business, but I'm not convinced their techniques apply equally well to all company sizes. Small companies just operate differently I think.
- Redoubts 2y agoWhat did you try? A comp discussion is a totally fair thing to start
- ericyd 2y agoMore detailed reply in another comment in this tree
- rNULLED 2y agoI think it might have come off as a bad cultural fit. Talking comp is appropriate always, but if you sound too interested in the cash and not the vision startups might not like it.
- codr7 2y agoExpecting someone who isn't even working there to be super enthusiastic about your vision just turns it into a competition of faking it; I guess if that's what you're hiring for.
- deleted 2y ago[deleted]
- leeny 2y agoHey! Not sure if you used our negotiation service or just used advice from one of our blog posts. I'll write a long response below, but obviously my long response doesn't help you if your offer got rescinded for negotiating. If it did, I am really sorry and take some of the blame. Would you mind sharing more of your story (especially if it didn't fall into "small headcount" scenario above) so we can do a better job about putting caveats on our advice? That said... In general, our advice holds for both large and small companies, but there are some caveats around 1) how much headcount the company has, 2) whether you're a jerk (can't imagine this was the case here!), and 3) whether you're negotiating directly with a founder. - You’re applying for a role at a very small startup. In this situation, it’s very possible that the startup literally just has one headcount, and in that scenario, they may just go with the candidate who accepts their offer first. To avoid this scenario, ask how many open headcount the position has. If it’s small and if you’re junior, then skipping the negotiation portion makes sense. - You’re a giant jerk during negotiations or you blatantly waste the company’s time. When we say “giant jerk” we mean being straight up rude to your recruiter. We do not mean advocating for yourself or asking for more money. And when we talk about wasting the company’s time, we mean drawing out the negotiation process for months, asking to talk to more than 5 people on the team, and still not being able to make up your mind. Also, regardless of these two scenarios, negotiating with founders is very different than negotiating with recruiters. It's a long explanation, so I'll post it as a reply.
- user99999999 2y agoGood to see a thriving industry based on the discontent of people rather it not exist
- user99999999 2y agoJust go into the interview wearing a “hearing aid” a fellow confidant waits outside in an unmarked white van feeding you the answers.
- seneca 2y agoThis comment section, saturated with people marketing this book, is absolutely bizarre and distasteful. This really feels like stepping over a line from sharing content to blatant advertising. From the guidelines: > Please don't use HN primarily for promotion. It's ok to post your own stuff part of the time, but the primary use of the site should be for curiosity.
- michael_mroczka 2y agoIf it helps, we (the authors) didn't even post this to HN (or ask someone else to). We definitely will answer questions as they come up though. And we were giving away free chapters from the book before today and are just linking to it. I don't see anything we're doing that is breaking the guidelines. Lots of authors chime in when their posts/articles/books are brought up.
- sherdil2022 2y agoThere is no value in the way technical interviews are being done - which is just a hazing ritual and what one remembers by practicing or rote memorization. If I don’t know how to center text or figure out how much rain water can be trapped using dynamic peogramming - doesn’t mean that I can’t design or architect a complex real-world system. Plus the way these tech interviews are done, it is not inclusive for those who feel like fish out of water die to panic attacks and/or anxiety.
- michael_mroczka 2y agoI can see how you’d get to that conclusion, but I don’t agree with this take. “No value” is particularly strong wording. This is a fairly simple, cheap, and fast process for screening people at scale (think “hundreds per week”), I agree that startups mostly shouldn’t rely on this type of interview (and most don’t from what I can gather). None of us authors are advocating exclusively for this interview type. Designing real-world systems is great, which is why most big tech companies have system design rounds in their processes (except for new grad interviews). Finally, speaking as someone with diagnosed severe anxiety and a specific disorder that causes frequent panic attacks, I completely empathize with being a “fish out of water” in this process. If it helps, you should know that most big tech companies have accommodations for such things depending on your needs (extra time, allowance of service animals in the interview room, etc). I’m not sure any interview process will be anxiety-free (it isn’t for “normal” people either), but through time and effort I have passed Google, Meta, Amazon, and other big tech interviews that have this process. In my experience, these are hindrances to be addressed but not immovable blockers to passing an interview.