As a tech and coding enthusiast, one would always have high aspirations. After the many procedures are taken to improve yourself in this field, you will aim high and desire to work for one of the FAANG companies.
Being a part of a FAANG company comes with a certain level of prestige and respect. However, it isn’t easy scaling through the interview process of these companies.
People often wonder what it takes to successfully scale through such interview processes and even envy those who are successful.
Do you desire to work in a FAANG company? If yes, you do not need to continue wishing as it can also become your reality with the ‘Cracking the Coding Interview’ book. This book is curated to help tech and coding enthusiasts secure jobs in their dream companies.
Some of you may already know about this book, while it may be the first time others will hear about it. It is a book that covers all aspects an aspirant needs to know about a coding interview, and it is written by someone with vast experience in the field.
Keep reading this article to see our in-depth analysis and review of this book. At the end of this article, you can decide if it will be a good choice to get the book.
About the Author
Before going further into the review, it is best to know about the author. Cracking the Coding Interview is written by Gayle Laakmann McDowell.
Do you desire to work in a FAANG company? If yes, you need to read through this book written by Gayle Laakmann McDowell. Understandably, you may be curious and wondering why anyone should pay attention to this book or the author.
It would interest you to know that the author of this book has worked for some of the FAANG companies.
Typically, FAANG is an acronym representing Facebook, Apple, Amazon, Netflix and Google. Gayle has served as a software engineer for Google and Apple out of these companies. In addition, she has also worked at Microsoft, a top company for people in tech.
Apart from being a software engineer, Gayle has also been a part of the hiring panel at Google. She was a part of those who hired software engineers for the organization.
So, you can be sure that she has in-depth knowledge of what FAANG interviewers throw at applicants.
Therefore, she put all her interview knowledge together in this book, hoping to help people secure their dream jobs in their dream organizations, especially if they target a FAANG company.
Overview of Cracking the Coding Interview book
Cracking the Coding Interview book is broadly categorized into two parts. When reading this book, it is easy to assume that there are two books in one. The first part of the book focuses on the interview aspect.
In that section, you understand certain techniques you can use to answer behavioral interview questions. It also covers what people should do before an interview, how they should prepare, etc.
The second section of the book focuses on coding problems. Here, you are presented with over 150 coding problems and their solutions.
Thus, it helps to ensure that you are well-prepared for any coding problem you may be given during an interview.
Now, let’s look at the various sections in detail:
The Interview Process
So, you have been successful in your applications, and you have landed an interview with your dream company. This section helps you to prepare for the interview process. It covers things like:
Behind the scenes: Recall that Gayle was once a part of Google’s hiring panel. Thus, she knows what goes on behind the scenes, sharing some of them in this book.
Here, she highlights some companies and gives insider knowledge of these organizations. Some of the highlighted companies are Apple, Amazon, Google, Facebook, Microsoft, and Palantir. Yes, you can see that she paid attention to the FAANG companies.
You will see that the interview process isn’t the same for all companies. For example, you may need to attend a boot camp in company A, but that will not be needed for company B.
This part helps ensure that you are not taken unawares while preparing for an interview with your dream company. It also ensures that you are a step higher than others who do not have this insider knowledge.
If you have been targeting a FAANG company, you can get all the steps and processes of their interview process when you read through this book.
Before the interview: It is always best to ensure that you meet the requirements of an organization before you apply. Else, you may not be accepted for the role.
So, this part of the book tells you what is expected before you can secure an interview. For example, some companies may need you to have a certain level of experience, while others may be interested in your portfolio.
Aside from the requirements, it also helps applicants tailor their resumes appropriately. It is best to note that your resume is the interviewer’s first interaction with you. Thus, you need to ensure that your resume is outstanding.
This section tells you the relevant employment history to input and the appropriate resume length. Unfortunately, we see people adding unnecessary things to their resumes. By reading through this book, you get to know the things to eliminate so that you do not lose the interviewer’s interest.
Interview questions: This aspect of the book focuses on the main interview. It helps you predict some of the questions thrown at you during the interview.
Here, you get to understand how interviews are structured. It helps you know the aspect that the interviewers target. Therefore, you get an idea of how the questions are selected and the frequently asked questions.
Of course, not all predicted questions may come out in your interview as companies differ. However, you are sure to get some familiar questions. The goal is to ensure that you are not confused or lost when these questions are thrown at you.
Behavioral Questions: Aside from your coding skills, the interviewer would also ask questions to analyze your soft skills. These questions are classified as behavioral questions. Sadly, we see that many applicants quiver at this part.
Thus, this book section aims to tell applicants what kind of behavioral questions to expect. The goal is to make people see that there is no need to fear answering behavioral questions. Instead, you need to be relaxed and carry the interviewer along in your answers.
This section also talks about confidence, a soft skill that every applicant should have. Of course, we do not expect you to become confident overnight. However, it is sure to happen with constant practice. Therefore, people are advised to always practice before an important presentation or interview in front of a mirror.
In this part of the book, you will learn about building your soft skills, being in front of an interviewer, and answering behavioral questions.
Technical Questions: Some people may describe this part of the interview as the hardest part. However, we believe that there is no part of an interview that is easy, and there is also no simple part. So, one needs to have an open mindset when approaching any aspect of an interview.
When it concerns technical questions, one begins to answer case study questions. These are usually real challenges that one would face when they get the job.
Typically, the interviewers want to check if you will be a great fit for their organization. And, what better way to determine than through case study questions? Through these questions, they know if you can develop solutions to any challenge you might face.
Gayle helps to share some of these technical questions and their solutions. You would also see 4 ‘Optimize and Solve Techniques’:
- Base Case and Build
- Data Structure Brainstorm
- Simplify and Generalize
Knowing these techniques will help anyone scale the technical questions in a coding interview.
Big O: As a coder and general tech enthusiast, you should be familiar with this concept. The Big O Notation describes the limiting behavior of a function when the argument tends towards a particular value or infinity.
Ideally, one should be familiar with this concept before an interview, especially if it is a FAANG interview.
But interestingly, we see that interviewers have a special way of spotting people who do not thoroughly understand this concept. And, it becomes a problem as they will deduct marks from you.
So, Gayle has this section in her book to help simplify the Big O Notation for anyone reading the book. She goes through the analogies, amortized time, recursive runtimes, multi-part algorithms, etc.
There are also practice exercises to help you familiarize yourself with the concept. If you have struggled to understand the Big O Notation, you will better grasp it with this book.
Special Situations: We love that the Cracking the Coding Interview book isn’t only focused on coders or software engineers. Instead, it covers other aspects, making it a book for almost anyone.
Gayle McDowell ensured to cover some special situations, ensuring that many people could get knowledge and information from her book. And she covers such special situations in this aspect of the book.
Here, you can get something for interviewers, testers, startups, product and program managers, etc. Therefore, it is best to say that this book is not limiting.
Even though we won’t want to give spoilers, you can get tips from this book section. It could also be advice for startup founders. Even as an interviewer, you will learn things from this book section.
It would not be wrong to say that this is one of the highlights and most interesting aspects of the Cracking the Coding Interview book.
After the Interview: What happens after the interview? It is either you get a job offer, or you don’t.
Suppose you get an offer letter; congratulations! This aspect of the book lets you know things you should do after getting an offer letter to ensure that you get to work in a favorable and conducive work environment.
Many people do not know how to handle a salary negotiation process. Thankfully, Gayle also covers it in this section of the book. Here, you learn how to negotiate your pay and other offers.
But, what happens if you do not get the job? Sadly, we see that some people spiral into a depressive circle. But that shouldn’t happen. Instead, you need to know how to pick yourself up and prepare for other opportunities that will come your way.
You were rejected, but that shouldn’t be the world’s end. This section of the book gives tips on how job seekers should effectively handle rejection.
Recall that the name of this book suggests that it is for coding interviews. So, it isn’t out of place that people would be expecting to see coding problems and solutions. And if that is what you expect when you read this book, you will find it in this section.
The goal is for people to study these problems in preparation for their coding interview.
Would the same questions come up in the interview?
Gayle isn’t promising that you will see the exact questions and problems when you go for your interview. However, you are sure to see something familiar, and you will scale through your interview.
This book has over 150+ coding problems and solutions. Thus, the goal should be to familiarize yourself with all of them. By the time you are done, we are sure that there wouldn’t be any coding challenge you cannot handle.
It is best to keep in mind that you are doing an interview where other applicants are equally as qualified as you are.
Thus, you need to learn techniques that help you answer questions better than they do. This way, you would score higher than them and impress the interviewers.
Yes, it wouldn’t happen overnight. However, you can get to that point with constant practice.
In this category of the book, you will get:
Code Library: Again, remember that coding is the main focus of this book, even though it also covers other areas. So, it shouldn’t be surprising that the book would have a code library..
Here, you see the various codes used throughout the programming questions in the book. It ensures that you do not feel lost or confused when you try to answer the programming questions.
TreeNode (Binary Search Tree) and LinkedListNode (Linked List) are part of the code library of the book. If you have worked with any of these before, you will find it easy to navigate the programming questions of the book.
Interview Questions: We had earlier mentioned that there are many possible interview questions in various aspects of this book. Suppose you are wondering about the basis of these questions. As earlier mentioned, some of the questions may be behavioral, while others may be technical. However, you are sure to see many coding problems preparing you for the core of the interview.
Gayle ensured that she was thorough while picking the interview questions. She picked from various categories, including:
- Data Structures: Data structure questions usually cut across trees and graphs, linked lists, stacks and queues, etc.
- Concepts and algorithms: math and logic puzzles, system design and scalability, testing, etc.
- Knowledge-based: Java, C++, threads and locks.
Advanced Topics: One can also learn about advanced topics with this book. It is not wrong to describe the Cracking the Coding Interview book as an encompassing book. The goal is to ensure a difference between those who use this book to prepare for an interview and others.
Some of these topics include:
- AVL Trees
- Topological Sort
- Dijkstra’s Algorithm
- seful Math
Going through these advanced topics will give you more insight into the coding world. It widens your perspective of various things, and you also gain knowledge in an easier format.
It comes in handy to know about some of these topics.
Some of the frequently asked questions about the Cracking the Coding Interview book include:
What does Cracking the Coding Interview teach you?
The book teaches you everything you need to know about securing a job with a tech company. It focuses on FAANG companies as they are giant tech companies.
The goal is to help people scale through the interview process, giving you problems with solutions and behind the scenes of what goes on in some of these companies.
Who is the author of Cracking the Coding Interview?
Gayle McDowell, a software engineer, is the author of Cracking the Coding Interview. She is also the founder of careercup.com. Gayle has worked in some FAANG companies like Google, Microsoft, and Apple. She was also on Google’s hiring board for software engineers.
How many problems are there in Cracking the Coding Interview?
Cracking the Code Interview has more than 150 problems. The goal is to ensure that readers are well-acquainted with these problems before facing an interview panel. In addition, Gayle hopes that all readers of this book will scale through their interview process with any company.
What programming language is used in Cracking the Coding Interview?
Is Cracking the Coding Interview book for beginners?
No, Cracking the Coding Interview book isn’t for beginners. To understand this book, one needs to have a certain level of understanding of tech and coding. It is for tech enthusiasts looking to further their careers.
In addition, this book can also be for interviewers, startup founders, etc.
After a thorough look through this book, we can say that it is worth it. This book covers all aspects that an aspirant needs to prepare before an interview.
It has lots of questions cutting across technical and behavioral questions and problems and solutions.
If you are looking to secure a new tech job, this book is for you. If you are looking to expand your knowledge, this book is for you.
If you want to know what goes on behind the scenes of a FAANG interview setting, this book is for you.
Start reading it now!