This book is a complete guide to handling software job interviews, including tips on how to tackle coding tasks.
Summary Of The Book
Software job interviews differ from other job interviews in the aspect wherein the focus is more on coding tasks, test of software theoretical knowledge, and brain teasers, and the focus on past experience, education and habits is less.
This is because the software industry is ever-evolving, constantly changing. When choosing software professionals, interviewers look for grasp of latest technologies, knowledge of some major programming languages, logical ability and the ability to improvise solutions.
Logical thinking is a prerequisite, for programming involves application of logic to solve problems and write code. The ability to improvise is needed because unusual problems or situations may crop up while coding.
This book deals with all these aspects, technical, theoretical, programming languages, and the non-technical aspects of the software job interview.
This book is divided into fifteen main chapters, with the sixteenth being a conclusion section. The fifteen chapters are Before The Search, The Job Application Process, Approaches to Programming Problems, Linked Lists, Trees and Graphs, Arrays and Strings, Recursions, Concurrency, Object-Oriented Programming, Databases, Other Programming Topics, Counting, Graphical and Spatial Puzzles, Knowledge Based Questions, and Non-Technical Questions.
The first two chapters deal with preparations for job application, and a general overview of how to handle software interviews. As the authors point out, it is necessary to get the groundwork right, before proceeding to the advanced steps.
They advise that first, the candidate should be clear about their preferred job profile, and design their resumes to reflect it. For instance, they have to decide whether they are coders, UI designers, testers, or software architects. These are just a few choices, the specializations are numerous, and the candidate should decide on one or two dominant job profiles and highlight their knowledge and experience in those.
Then comes searching for job postings, finding the right companies, applying for the job, and then the interviews. The authors give a general overview here of how the candidate should present themselves, dress codes, and how to handle recruiters, and negotiate salaries and terms, once selected.
After this, the authors define different approaches to solving programming tasks set during interviews. They provide tips on how to study the problem and come up with solutions, what to do when the candidate gets stuck, different ways to analyze the problem, choosing the language to write the code in etc.
After this, the chapters deal with technical and non-technical topics that might be covered in the interview and in the coding tasks. The book covers technical concepts like linked lists, arrays and strings, trees, recursions, databases, object-oriented programming, etc.
The book also devotes two chapters to puzzle questions that might be asked, covering various types of puzzle-counting, measuring and ordering puzzles, and graphical and spatial puzzles. Then the book covers some non-technical questions that might be asked, like what is your favorite programming language, what is your work style etc.
The appendix section contains some sample resumes.
About The Authors
John Mongan is a radiologist.
Programming Interviews Exposed is his first book.
John Mongan has a doctorate in bio-informatics and works as a resident radiologist at UC San Francisco. He conducts research in medical informatics, and has several pending patents on software testing technologies.
Noah Suojanen is a software developer with extensive experience.
He co-authored Programming Interviews Exposed with John Mongan and Eric Giguere.
Noah Suojanen has lead software development teams across different products. He is currently VP Technology at Avira, the security software firm.
Eric Giguere works at Google.
Other books by him include Blackberry Playbook Companion, Make Easy Money With Google: Using The AdSense Advertising Program, and Palm Database Programming: The Complete Developer's Guide.
He writes books on programming languages and platforms, and guides on using various technologies.
Eric Giguere has a masters degree in computer science. He has over 20 years of programming experience as a software engineer at Google.
Imprint |
|
Author Info |
|
Series Name |
|
Nice book for preparation of interview
kumar gulshan
Jul, 2013
Useful book for preparing for programming interviews
Mohamed Sanaulla
Dec, 2011
Gets the basics right
Abhijeet Gaiha
Certified Buyer
Jan, 2014
Nicely Compiled Concepts with Examples
Balaji Radhakrishnan
Certified Buyer, Chennai
Feb, 2015
Awesome Book for Good Interviews
Javed
Certified Buyer
Jan, 2014
Fabulous!
Pradeep Ingle
Certified Buyer, Dakshina Kannada District
Nov, 2018
Simply awesome
Rabindra Mahato
Certified Buyer, Kalyani
Jul, 2017
Mind-blowing purchase
Flipkart Customer
Certified Buyer, Ghaziabad
May, 2017
a good enough guide!!
Zia Kanungo
Certified Buyer, Bhubaneswar
Jun, 2014