You are previewing Ace the Programming Interview: 160 Questions and Answers for Success.
O'Reilly logo
Ace the Programming Interview: 160 Questions and Answers for Success

Book Description

Be prepared to answer the most relevant interview questions and land the job

Programmers are in demand, but to land the job, you must demonstrate knowledge of those things expected by today's employers. This guide sets you up for success. Not only does it provide 160 of the most commonly asked interview questions and model answers, but it also offers insight into the context and motivation of hiring managers in today's marketplace. Written by a veteran hiring manager, this book is a comprehensive guide for experienced and first-time programmers alike.

  • Provides insight into what drives the recruitment process and how hiring managers think

  • Covers both practical knowledge and recommendations for handling the interview process

  • Features 160 actual interview questions, including some related to code samples that are available for download on a companion website

  • Includes information on landing an interview, preparing a cheat-sheet for a phone interview, how to demonstrate your programming wisdom, and more

Ace the Programming Interview, like the earlier Wiley bestseller Programming Interviews Exposed, helps you approach the job interview with the confidence that comes from being prepared.

Table of Contents

  1. Cover
  2. Introduction
    1. Code for this Book
    2. How This Book is Organized
  3. Chapter 1: Hiring Programmers: The Inside Story
    1. Reasons They Recruit
    2. Talking to Managers
    3. Preparing Your CV
    4. Using Job Sites
    5. Recruitment Agencies
    6. Searching for Jobs Yourself
    7. Emerging Alternatives
  4. Chapter 2: Handling the Phone Interview with Confidence
    1. Knowing What to Expect
  5. Chapter 3: In-Person Interviews
    1. Preparing for the Interview
    2. The Most Important Thing
    3. The Second Most Important Thing
    4. Communicating Effectively
  6. Chapter 4: Negotiating a Job Offer
    1. Understanding the Market
    2. Doing the Numbers
    3. The Role of the Recruiting Agent
    4. Start as You Mean to Go On
    5. Evaluating a Contract
    6. What to Do If Things Go Wrong
    7. Summary of Negotiating Tips
  7. Chapter 5: Programming Fundamentals
    1. Understanding Binary, Octal, Hexadecimal
    2. Understanding Data Structures
    3. Sorting
    4. Working with Recursion
    5. Modeling with Object-Oriented Programming
    6. Thinking Like a Functional Programmer
    7. Understanding SQL
    8. Full-Stack Web Development
    9. Deciphering Regular Expressions
    10. Recognizing Hard Problems
    11. QUESTIONS
    12. ANSWERS
  8. Chapter 6: Code Quality
    1. Writing Clear Code
    2. Writing Expressive Code
    3. Measuring Efficiency and Performance
    4. Understanding What “Modular” Means
    5. Understanding the SOLID principles
    6. Avoiding Code Duplication
    7. QUESTIONS
    8. ANSWERS
  9. Chapter 7: The Usual Suspects
    1. Concurrent Programming
    2. Relational Databases
    3. Pointers
    4. Design Issues
    5. Bad Habits
    6. QUESTIONS
    7. ANSWERS
  10. Chapter 8: Quirks and Idioms
    1. Binary Fractions and Floating Point Numbers
    2. QUESTIONS
    3. JavaScript
    4. QUESTIONS
    5. C#
    6. QUESTIONS
    7. Java
    8. QUESTIONS
    9. Perl
    10. QUESTIONS
    11. Ruby
    12. QUESTIONS
    13. Transact-SQL
    14. QUESTIONS
    15. ANSWERS
  11. Chapter 9: Testing—Not Just for Testers
    1. Unit Tests
    2. Test-Driven Development
    3. Writing Good Unit Tests
    4. Testing Slow Things
    5. Unit Testing Frameworks
    6. Mock Objects
    7. QUESTIONS
    8. ANSWERS
  12. Chapter 10: The Right Tools
    1. Exploring Visual Studio
    2. QUESTIONS
    3. Exploiting Command-Line Tools
    4. QUESTIONS
    5. Understanding PowerShell
    6. QUESTIONS
    7. Troubleshooting with Utilities from Sysinternals
    8. QUESTIONS
    9. Managing Source Code
    10. QUESTIONS
    11. QUESTIONS
    12. QUESTIONS
    13. ANSWERS
  13. Chapter 11: Notorious Interview Questions
    1. Estimating on the Spot
    2. QUESTIONS
    3. Solving Puzzles and Brain-Teasers
    4. QUESTIONS
    5. Solving Probability Problems
    6. QUESTIONS
    7. Coping with Concurrency
    8. QUESTIONS
    9. Doing Tricks with Bits
    10. QUESTIONS
    11. Devising Recursive Algorithms
    12. QUESTIONS
    13. Understanding Logic Gates
    14. QUESTIONS
    15. Writing Code to…Prove You Can Code
    16. QUESTIONS
    17. Answers
  14. Chapter 12: Programming Wisdom
    1. QUESTIONS
    2. ANSWERS
  15. Appendix A: Preparing Your Cheat Sheets
    1. General and Behavioral
    2. Programming, General
    3. Programming Concepts
    4. Work History
    5. Questions to Ask, If Given the Opportunity