- Paperback: 510 pages
- Publisher: CreateSpace Independent Publishing Platform; 2 edition (October 11, 2012)
- Language: English
- ISBN-10: 1479274836
- ISBN-13: 978-1479274833
- Product Dimensions: 6 x 1.2 x 9 inches
- Shipping Weight: 1.7 pounds (View shipping rates and policies)
- Average Customer Review: 280 customer reviews
- Amazon Best Sellers Rank: #33,754 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.
Elements of Programming Interviews: The Insiders' Guide Paperback – October 11, 2012
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
"A practical, fun approach to computer science fundamentals, as seen through the lens of common programming interview questions."
Jeff Atwood / Co-founder, Stack Overflow and Discourse
"This book prepares the reader for contemporary software interviews, and also provides a window into how algorithmic techniques translate into the workplace. It emphasizes problems that stem from real-world applications and can be coded up in a reasonable time, and is a wonderful complement to a traditional computer science algorithms and data structures course."
Ashish Goel / Professor, Stanford University
"A wonderful resource for anyone preparing for a modern software engineering interview: work through the entire book, and you'll find the actual interview a breeze. More generally, for algorithms enthusiasts, EPI offers endless hours of entertainment while simultaneously learning neat coding tricks."
Vineet Gupta / Principal Engineer, Google
From the Author
Have you ever...
- Wanted to work at an exciting futuristic company?
- Struggled with an interview problem that could have been solved in 15 minutes?
- Wished you could study real-world computing problems?
Top customer reviews
It also includes non technical advice about resume preparation, the interview process and what not to do. It really covers all the bases for interviewing in the IT industry as a software developer.
2. Provides good interviewing tips and completed strategies for how to prepare for a technical interview and how to write a resume.
3. Gives several study schedules based for different time constraints.
4. Explains solutions in details and provides hints.
5. EPI is mainly focus on CS-major and Math-major readers, since it needs solid knowledge about algorithms and data structures. Other readers may have some difficulties on understanding the proofs and concepts.
6. EPI is an advanced book compared with other similar materials such as "Cracking the Coding Interview" and "Programming Interviews Exposed".
7. A little bit hassle for JAVA developer, but authors do provide java codes on the website.
8. I love the quotes in the beginning of each chapter.
I am very glad to have this book on my shelf, it's not only just a technical interview preparing material but also a instructor helps readers to think
1. My story
Yes, it sounds wired I love a such practical and specific book, but yes once you’re like me: spend many times on preparing a tech interview, you will understand how important that you are in a right track.
Started to prepare programming interview two months ago, like everyone else, I learned from glassdoor and careercup, because the problems seems more advanced and practical compare to other interview preparation books.
But the thing is, I have no idea whether my solution is good enough. After preparing for the interview couple of months, I thought I was well prepared, but in some interviews (God, I really don’t want to recall that nightmares), when the interviewer asked me to improve my solution, I had no idea.
This is a big problem. Because maybe you think you are right, but the truth is not. And even worse, you found you were wrong when you were interviewing!
This is, from my point of view, the most unique characteristic of Element of Programming Interview:
Because the context of tech interview, I want to redefine “Practical”:
Every round of an onsite/phone interview is roughly one hour, a candidate needs to talk about himself/herself or introduces his/her projects listed on the resume for 10 mins, and has to finish two programming problems also. We just have 25 mins to analysis the problem, figure out which algorithm/data structure we should use. Only 10 mins left for each problem. A good candidate must clarify the problem, explain his/her own approach, write the code on whiteboard and test it within the time limitation.
1). A practical approach must be concise and comprehensive. Talking too must is wasting your time and nonsense words don’t count.
2). A practical code must be short enough that you can write it on board in 10 minutes. Someone tends to write 50 - 60 lines of code, but it’s not efficient. Base on my observation, the number of lines should not over 30 lines.
If you think I’m right, let me invite you read the sample of EPI, it’s really practical that could help you improve yourself on the right way.
Advanced - yes the problem is hard enough!
There is an old Chinese saying: Over prepare is the best.
Interview questions are hard enough for those who are not proficient with data structure and algorithm, even for Computer Science majored students. To achieve our target, we need more time to study some harder problem which could lead us to a more deeper understanding of basic data structure.
EPI introduces not only poster child of Computer Science like Binary Tree, but also advanced data structure and like augmented binary tree or quick selection algorithm. Yes, definitely, most of us have learned them from textbook, but I think we need more examples to understand when to use them and why to use them. This lead to another good part of EPI I want to share:
Topic with exercise
We learned many from textbook, but we don’t have enough opportunities to practice what we’ve learned. Yes, you may never touch those in the future of your career life, but with a high probability, you may encounter them in the interview. EPI also provides some not-so-easy exercises named as Variant.
1) The first part of the book summarizes the interview strategy and problem-solving patterns in a systematic way, which is very useful and can not be easily found in other coding textbooks. I need to read it multiple times to enhance my understanding on coding skills.
2) The second part contains lots of coding puzzles, categorized into different chapters. All the problems are given a nice solution, and some problems have additional variant problems in the answer section in later sections of the book. Besides some common-seen topics such as DP, recurrsion, alg specific to some data-structure, the book also covers other important but not very common-seen topics such as greedy, parallel computing, and design problems.
3) The ninja problems are really difficult, and some of the solutions are really smart and interesting. Taking exercises on these difficult puzzles, and it will help to train the problem-solving ability.
Most recent customer reviews
And I landed a job there.Read more