twitter.com/gayle
facebook.com/gayle
technologywoman.com
Interviewing A-Players
Reverse Engineering Interview Coaching
to Create Great Candidates
Gayle Laakmann McDowell
June 2014
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Gayle Laakmann McDowell
<dev> </dev>
Author Interview Coach Interview Consulting
(CS) (MBA)
1
twitter.com/gayle
facebook.com/gayle
technologywoman.com
What I Coach
Download at:
CrackingTheCodingInterview.com
2
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Traditional Dev Questions
Startups “Elite” Other
Behavioral/Experience
Knowledge-Based
System Design/Architecture
Algorithms/Problem-Solving
✔
?
✔
?
✔
?
?
Disclaimer: So. Many. Exceptions.
3
twitter.com/gayle
facebook.com/gayle
technologywoman.com
How can you help
candidates be their best?
4
Behavioral Problem Solving
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Behavioral Questions: Mistakes
• Underplaying individual contributions
• Using “we” not “I”
• Not elaborating on actions
5
• Don’t assume
• Probe for details
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Generalist vs. Specialist
• Generalist (algorithms/problem-solving):
– Reasonable test of intelligence if done well
– Hires highly adaptable people
– BUT necessitates that you will train people
• Specialists (knowledge & experience):
– Tests that someone can “hit the ground running”
– BUT is the knowledge actually difficult to acquire?
6
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Algorithm Questions
“Problem-Solving Questions”
= Solving a problem you
have NOT seen before.
7
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Problem-Solving Questions
few false positives
(only good people pass)
but…
lots of false negatives
(many good people fail)
8
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Why Problem-Solving Questions Work
• Smart people do good work.
• Hires adaptable people
So why so many
false negatives?
9
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Why Smart People Fail
1. Knowledge gaps
2. Intimidation
3. Arbitrary questions
4. Not knowing how to be good
These are [partially]
solvable problems.
10
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Why Help Candidates Be Great?
• Goal: good employees, not good candidates.
• Do you want to eliminate…
–Everyone who doesn’t know ___?
–People who are insecure?
–People who are bad at interviewing?
–People at random?
11
twitter.com/gayle
facebook.com/gayle
technologywoman.com
1: Knowledge-Gaps (Why?)
• Not knowing fundamental CS knowledge
– Especially older people!
• Obscure CS knowledge being tested
– Making questions “hard” via knowledge.
12
twitter.com/gayle
facebook.com/gayle
technologywoman.com
2: Intimidation (Why?)
• Low self-confidence.
• Scary questions.
• Candidates misunderstanding interview goals.
• Interviewers being [unintentionally] rude.
13
twitter.com/gayle
facebook.com/gayle
technologywoman.com
3: Arbitrary Questions (Why?)
• Well-known questions.
• Easy questions.
• “A-Ha” moments & singular hurdles.
14
twitter.com/gayle
facebook.com/gayle
technologywoman.com
4: Not Knowing How To Be Good
• Didn’t use an example.
• Tried to rush the process.
• Didn’t walk through problem.
15
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Design Around This
1. Decide what you value.
2. Ask the right questions.
3. Give candidates tools to prepare.
4. Train your interviewers.
16
twitter.com/gayle
facebook.com/gayle
technologywoman.com
1. Decide What You Value
• Is problem-solving skills a top priority?
• What sorts of specialist skills do you need?
• Are fundamentals of CS sufficient?
17
twitter.com/gayle
facebook.com/gayle
technologywoman.com
2. Ask the Right Questions
• Right topics:
– Avoid scary topics.
– Require only basic CS knowledge.
• Right difficulty:
– Medium & hard problems.
– Avoid common problems.
• Logical path with multiple insights.
18
twitter.com/gayle
facebook.com/gayle
technologywoman.com
3. Give Candidates Tools to Prepare
• Tell them:
– What to expect.
– How they’ll be evaluated.
– Struggling is normal.
• Links to preparation resources.
19
twitter.com/gayle
facebook.com/gayle
technologywoman.com
4. Train Your Interviewers
• How to design good questions.
• Be extra nice to candidates.
• Coach candidates to be great
20
twitter.com/gayle
facebook.com/gayle
technologywoman.com
4b. Coach Candidates To Be Great
• Encourage the right example.
• Remind them of details.
• Don’t let them dive into code.
• Encourage shifting gears.
• POSITIVITY & SENSITIVITY
A good coach can make a HUGE difference!
21
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Need The Right Infrastructure
• Interview training
• List of good & bad questions -- and why
• Standard resource sheets for candidates
• Feedback from candidates
• Assigned roles
• Continuous evaluation & shadowing
22
twitter.com/gayle
facebook.com/gayle
technologywoman.com
Itshouldn’tcometothis…
23

Interviewing Great Developers: Reverse Engineering Interview Coaching to Create Great Candidates