1. Cracking the Coding Interview: 150 Programming Questions and Solutions – By Gayle Laakmann McDowell
This book is a #1 Best Seller in the Job Interviewing category on Amazon. It is also #1 in the Software Design and Engineering training category, and #2 in the category for books about Software Design and testing. The author has worked for Microsoft, Google, and Apple, some of the tech industry’s giants. Ms. McDowell worked in roles at these companies that gave her insight into their hiring practices, and is the first one to tell people she is a software engineer, not a recruiter. This book describes their interview process, what happens behind the scenes, what interviewers are looking for specific to different types of IT positions, how to prepare for and get the interview, covers strategies to tackle tough technical questions, and lists out 150 questions and how to provide answers to them. This book has a 4.7 stars out of 5 stars, and almost exclusively has glowing reviews.
2. Elements of Programming Interviews: 300 Questions and Solutions – By Adnan Aziz, Amit Prakash, and Tsung-Hsien Lee
This book is a #1 Best Seller in the Data Structure Algorithm category, and #3 in the Job Interview category. This book contains a very brief section on how to prepare for your interview, and then dives straight into some of the most complex technical interview questions you can be asked and provides their solutions. Code snippets are provided as well. Some of the topics covered include: Primitive Types, Arrays and Strings, Linked Lists, Stacks and Queues, Binary Trees, Heaps, Searching, Hash Tables, Sorting, Binary Search Trees, Meta-algorithms, Algorithms on Graphs, Intractability, Parallel Computing, Design Problems, Probability, and Discrete Mathematics. This book is for the die-hard techie interviewing for a complex software design / engineering position.
3. Ace the Programming Interview: 160 Questions and Answers for Success – By Edward Guinness (Available in Kindle Only)
This book was written by a programmer who has also been an interviewer for technical jobs. This book discusses what your resume needs to include, it sets expectations about the technical interviewer, how to prepare for the interview, and even helps you prepare for a phone interview by creating your own cheat sheet to code-writing best practices, and language-specific quirks. You’ll learn what you need to research before the interview and how to be prepared for some of the most common problems technical interviewers present. It discusses some of the small differences between code snippets of JavaScript, C#, Java, Perl, Ruby on Rails, and T-SQL. And, it also discusses how to answer open-ended questions that test the experience of a programmer.
4. Design Patterns: Elements of Reusable Object-Oriented Software – By Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides
This book has been described by many online blog reviewers and reviewers of this book as THE must-read book for all developers. It is the #2 Best Seller in the Software Design, Testing & Engineering category, and is the #3 Best Seller in the Pattern Recognition Algorithm category, and is the #5 Best Seller in the Software Engineering Design Tools and Techniques category. This book focuses on core object-oriented coding principles, and even though it was published in 1994, all reviewers of this book still firmly state (with reviews as current as Nov. 2013) that this book should be required reading for anyone getting into the software development field of object-oriented programming. That says a lot for a book that is almost 20 years old. So, what’s the big deal?
The book presents a catalog of commonly occurring design problems, and presents 23 patterns that allow designers to create flexible and reusable designs without having to recreate the wheel themselves to the design solutions. They describe what patterns are and how they can help you design better object-oriented code. They then name, explain, evaluate, and catalog recurring designs in most object-oriented systems. You will learn when to apply these designs, their constraints, consequences, and trade-offs of using the pattern within a larger design. Code is also included that demonstrates how it can be implemented in object-oriented languages. Once you have learned these recurring designs, you can very quickly and easily begin to apply them to some of the most common problems you will face as a programmer.
5. Programming Interviews Exposed: Secrets to Landing Your Next Job, 3rd Edition (Programmer to Programmer) – By John Mongan, Noah Kindler, and Eric Giguere.
This book is a Top 30 Best Seller in the Software Design & Engineering category; Software Design, Testing & Engineering category; and in the Job Hunting category. It has 4.2 stars out of 5 stars in reader reviews. This book provides you with step-by-step solutions to an exhaustive set of technical interview questions. It starts by helping you utilize LinkedIn and other social networks to find the jobs and how to prepare for the interview process. It then teaches you the techniques needed to solve complex technical interview problems. This book provides step-by-step solutions to solve questions asked about linked lists, trees and graphs, arrays and strings, recursion, sorting, concurrency, object-oriented programming problems, design patterns, database problems, graphics and bit manipulation, counting/measuring/ordering puzzles, graphical and spatial puzzles, knowledge-based questions, and non-technical questions. Code snippets are provided in C, C++, C#, and Java with an emphasis on object-oriented solutions. This third edition also includes new chapters on sorting and designing patterns. It also includes new questions on 64-bit computing and secure programming practices.
6. How Would You Move Mount Fuji?: Microsoft’s Cult of the Puzzle — How the World’s Smartest Companies Select the Most Creative Thinkers – By William Poundstone
This book is the #1 Best Seller in the Kindle Stores Job Hunting category, and #7 in the same category for printed books. It has 4 out of 5 stars in the reviews by readers. This book is touted as a goldmine for preparation for Microsoft’s technical interview process. These are puzzle questions that have nothing to do with your technical ability and everything to do with your ability to think outside the box about a problem. It shows the interviewer how you go about solving a problem to which their is not an immediate answer. Often seen as riddles or impossible questions by interviewees, companies like Microsoft utilize questions like these to truly test your problem-solving ability, to test how you react under pressure, and psychologically to see how easily you can get rattled. This book discusses the approach you should take to solving questions like these, and helps you understand how to systematically break these questions down into components that could potentially answer the question. Not used just in technical interviews anymore, puzzle/riddle questions like these are becoming more prevalent in behavioral interviews of main stream jobs. This is definitely a must-read, in my opinion.
7. The Google Resume: How to Prepare for a Career and Land a Job at Apple, Microsoft, Google, or any Top Tech Company – By Gayle Laakmann McDowell
If one of your goals is to secure a spot on your resume with one of the top tech giants in the industry, then this book is for you. From discussing what you should major in at university to which extracurricular activities you should have experience in, how to apply for these jobs, how to design and tailor your resume to get noticed by one of these tech companies, to how to prepare for and excel at an interview with one of these companies, this book will tell you what these tech giants’ interviewers look for when identifying top potential candidates. A lot of emphasis is put on deconstructing your resume and cover letter so that it will get noticed. It also talks about how the programming interviews differ at Google, Amazon, Apple, and Microsoft, and what types of questions you should be prepared to answer. There is also a chapter dedicated to gamers intent on breaking into the development world of the top gaming companies. Definitely a must-read so that you will help gain a better understanding from the recruiters perspective what they are looking for and how to get noticed.
8. Are You Smart Enough to Work at Google?: Trick Questions, Zen-like Riddles, Insanely Difficult Puzzles, and Other Devious Interviewing Techniques You … Know to Get a Job Anywhere in the New Economy – By William Poundstone
This is another Top 30 Best Seller in the Kindle Store. This book contains dozens more of those pesky trick interview questions and works you through how to answer them. The focus is really on creative thinking and how to show your interviewer how your brain works step-by-step as you solve complex problems. With these questions, it is not so much the answer that recruiters are looking for as it is the process you use to solve the problem. This book also discusses how to one-up the competition for these jobs, what your social profiles say about you, and how to handle those questions that you just can’t seem to answer.
9. Introduction to Algorithms – By Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein
This book is a #1 Best Seller in the Algorithms category, #3 in the Modeling and Simulation category and is touted by some tech bloggers and reviewers as the Algorithm Bible. If you have read through some of the other tech interview books I’ve recommended above, and the sections on Algorithms are throwing you for a loop, then you need to make the investment and buy this book. Explanations are explained in an elementary enough fashion that even a tech newbie can understand them. If you are looking to work at Amazon or Google, or some other high-tech company that focuses a lot on complex data models or data analytics, search algorithms, or complex processing of data, this is a must-read. Many of these companies have a sink or swim mentality, and once you’re hired, you’re expected to be able to handle assignments such as these and tackle them without any problems. Better to learn it now than have to scramble on the job and figure it out after you’re hired!
Read full article from Top 10 Technical Interview Questions Prep Books - Blog About Jobs
No comments:
Post a Comment