SlideShare a Scribd company logo
GayleL. McDowell | Founder/ CEO, CareerCup
gayle in/gaylemcdgayle
The Architecture of Interviews
Consistency+ Efficiency+ High Bar + Happiness
June7, 2016 | Talent42
&
candidates are
frustrated confused
gayle in/gaylemcdgayle 3Gayle Laakmann McDowell
They
Don’t
Know…
 Howmany interviews
 Who will be interviewing
 If they’ll code?How?
 What they need to know
 Howdecision gets made
 WHY?
Lotsofmyths
(andmisinformation)!
&
&
companies need
consistency efficiency
high bar happiness
Gayle Laakmann McDowell 5gayle in/gaylemcdgayle
Consistency & Efficiency
Consistency
 Outcome
 Process
 Questions
Efficiency
 Speedy process
 Able to expedite
 Minimal overhead
 Minimal false negatives
Gayle Laakmann McDowell 6gayle in/gaylemcdgayle
High Bar & Happiness
High Bar
 Minimize false positives
 Good, adaptable people
Happiness
 Enjoyable experience
 Makes company look good
 Transparency
7 gayle in/gaylemcdgayle
The Process
Resume Selection
Intro Call w/
Recruiter
Email that outlines
process
Code Assessment
Phone Interview
~4 onsite
interviews
Discussion &
Decision
“Sell” Call / Dinner
gayle in/gaylemcdgayle 8Gayle Laakmann McDowell
Stuff
I’ll
Discuss
 BarRaisersvs. Hiring Committees
 OfflineWork
 Homework vs code assessment tools
 QuestionStyle
 Knowledge, algorithms, pair programming
 Coding Platform
 Real code vs. pseudocode
 Whiteboard vs. computer
Bar Raisers or
Hiring Committees
So different, yet so similar
01
Gayle Laakmann McDowell 10gayle in/gaylemcdgayle
Bar Raisers andHC
Offer transparency
Offer consistency
Keepbar high
Facilitatechange
Can override manager
gayle in/gaylemcdgayleGayle Laakmann McDowell 11
HiringCommittee
Cons
 Overhead
 Delays
 Un-empowering
 Can feel “black box”
 Need good feedback
Pros
 Cross-company consistency
 Keeps barhigh
 Easierto improveprocess
Gayle Laakmann McDowell 12gayle in/gaylemcdgayle
Who’s it good for?
Companies that:
 See5or more devcandidatesperweek
 Wanttoimproveprocess
 Hireforcompany,notteam
 Arenotveryknowledgefocused
Easier to implement early!
gayle in/gaylemcdgayleGayle Laakmann McDowell 13
HiringCommittee: Best Practices
Meet at least 2x per week
Multiple HCs:
 Beware ofbarcreep /inconsistencies
Let interviewers observe HC
Traininterviewers to write feedback
Quality of decisions rests onfeedback
gayle in/gaylemcdgayleGayle Laakmann McDowell 14
Bar Raisers
Cons
 Need consistency across
company
 Need to scale team
Pros
 Many ofHC benefits:
 Consistency
 High bar
 Transparency
 But easierto implement
 No bottleneck
gayle in/gaylemcdgayleGayle Laakmann McDowell 15
Bar Raisers:Best Practices
 Select people who areinherently good
 Experiencedatinterviewing
 Nice, empathetic
 Smart&can challengecandidate
 Train them thoroughly
 Empowerthem
 Assign outside of team
 Watch out for scale/exhaustion!
Offline
Assessments
Homework, code assessment tools,
etc
02
Gayle Laakmann McDowell 17gayle in/gaylemcdgayle
OfflineAssessments
Homework Projects Code Assessment Tools
gayle in/gaylemcdgayleGayle Laakmann McDowell 18
Homework Projects
Big
Very Practical
Some love this
Lesscheating
 Except:algos
Too immediate
Needs eng time
Disproportionate workload
Scales poorly for candidate
gayle in/gaylemcdgayleGayle Laakmann McDowell 19
Homework: Best Practices
Show candidate
interestfirst
< 4 hours
 If >4, onsite project review
Architecture, not algorithms
Define review criteria
Avoid confusion with
company work
gayle in/gaylemcdgayleGayle Laakmann McDowell 20
Homework: Who It’s Good For
Language focused
 Low priority on algorithms / thought process
Experienced candidates (maybe)
gayle in/gaylemcdgayleGayle Laakmann McDowell 21
Code Assessment Tools
Fast, cheap eval
 Morecandidates
 Non-traditional
Sets expectations for onsite
Consistent data point
Cheating
May turn off senior
candidates
gayle in/gaylemcdgayleGayle Laakmann McDowell 22
ImplementationOptions
Everyone
Just your “maybe” candidates
Fast-Track
gayle in/gaylemcdgayleGayle Laakmann McDowell 23
Who It’s GoodFor
Small, mid-sized, and big companies
Value algorithms / problem solving
Lots of candidates
Want to look at non-traditional candidates
gayle in/gaylemcdgayleGayle Laakmann McDowell 24
Code Assessment: Best Practices
Show candidate interest
first
Beware of cheating
 (But nobiggie!)
Clearexpectations
Pick GREAT questions
 Similar to real interviews
 Unique questions
1 – 2 hour test
Question Style
Pair programming, algorithms,
knowledge
03
Gayle Laakmann McDowell 26gayle in/gaylemcdgayle
What ToAsk
Knowledge
Algorithms
Design/Architecture
Pairprogramming
Gayle Laakmann McDowell 27gayle in/gaylemcdgayle
Knowledge Questions
Good whenyou can’t train skilleasily
Best practice:
 In-depth,ifat all
 Keepita discussion
Gayle Laakmann McDowell 28gayle in/gaylemcdgayle
Algorithm Questions
Smartmatters.
Good for everyone
Best practices:
 Clear expectations with interviewers & candidates
 Ask medium-to-hard & unusual questions
Gayle Laakmann McDowell 29gayle in/gaylemcdgayle
Design/Architecture
Great for experienced candidates
Shows communicationskills
Best practice:
 Prepcandidates.Big unknown!
gayle in/gaylemcdgayleGayle Laakmann McDowell 30
PairProgramming
 Many candidates enjoy it
 Feels fair & real world
 Assesses codestyle / structure
 Shows interpersonal interaction
 Less understood
 Not greatfor algos
 Interviewer really matters
 Biased by tools
Gayle Laakmann McDowell 31gayle in/gaylemcdgayle
PairProgramming: Best Practices
 Prep/warn candidates
 Need GREAT interviewer
 Give choice of problems
 Okay/good to pick unreasonably big problems
 Guide candidates
 (Okaytoaskquestions,notknowtools,etc.)
Coding Platform
Whiteboard vs. Computers
04
Gayle Laakmann McDowell 33gayle in/gaylemcdgayle
Why We Make Them Code
Can theyput“thoughts”into “actions”?
Do they show good structure and style?
Do they thinkabout theimpact of decisions?
Why not pseudocode?
A Game with Secret Rules
… and this is for a
simple problem
Gayle Laakmann McDowell 36gayle in/gaylemcdgayle
Don’t Allow Pseudocode
Unpredictable playing field
Detailsmatter
If “real code” is too hard for them…
gayle in/gaylemcdgayleGayle Laakmann McDowell 37
How toCode
Big Practical Stuff
Use computer
Pair Programming
Small Stuff
Algorithm-focused
Computer or
whiteboard
gayle in/gaylemcdgayleGayle Laakmann McDowell 38
Buthow to code?
whiteboard computer
gayle in/gaylemcdgayleGayle Laakmann McDowell 39
A Case for Computers
 Realistic. Allows tools.
 Candidates feel more comfortable
 (Especially experienced &diversity candidates)
 Faster to write (often)
 Morecode
gayle in/gaylemcdgayleGayle Laakmann McDowell 40
The Downsideof Computers
Oftenwrite stupid stuff
Desperate attemptfor compilation
Communicationshutsdown
Biased by tools/laptop
“Transition” betweenalgorithm & code
gayle in/gaylemcdgayle 41
z
Gayle Laakmann McDowell
Computer
Best
Practices
Let candidate bring laptop
Instruct: not every detail
Encourage communication and
thinking
Recognize the bias!
gayle in/gaylemcdgayleGayle Laakmann McDowell 42
A Case for Whiteboards
Encourages thinking & communication
More language agnostic
Consistent across candidates
 Better laptop/tools doesn’t matter
It’s “standard”
gayle in/gaylemcdgayleGayle Laakmann McDowell 43
The Downsideof Whiteboards
Slow to write
Artificial environment
Can be intimidating
gayle in/gaylemcdgayle 44
z
Gayle Laakmann McDowell
Whiteboard
Best
Practices
Encourage shorthand
Be upbeat & encouraging
Reasonable expectations
gayle in/gaylemcdgayleGayle Laakmann McDowell 45
Recommendations
If skill-focused:
then Computer
If algos-focused:
then Whiteboard
If a little of each:
then Either/or
 Both can work!
 … with proper training
 Whynot let candidate choose?
Last Remarks
05
gayle in/gaylemcdgayleGayle Laakmann McDowell 47
Thingsto Consider
 BarRaisersor Hiring Committees
 Code assessmenttools
 Pairprogramming(forpracticalstuff)
 Whiteboard(orpick-your-poison)foralgorithmsstuff
there is no
perfect system
THANK YOU
gayle@gayle.com
gayle in/gaylemcdgayle

More Related Content

What's hot

C* Summit 2013: The World's Next Top Data Model by Patrick McFadin
C* Summit 2013: The World's Next Top Data Model by Patrick McFadinC* Summit 2013: The World's Next Top Data Model by Patrick McFadin
C* Summit 2013: The World's Next Top Data Model by Patrick McFadin
DataStax Academy
 
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
mumrah
 
Everything you ever needed to know about Kafka on Kubernetes but were afraid ...
Everything you ever needed to know about Kafka on Kubernetes but were afraid ...Everything you ever needed to know about Kafka on Kubernetes but were afraid ...
Everything you ever needed to know about Kafka on Kubernetes but were afraid ...
HostedbyConfluent
 
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
DataStax Academy
 
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Databricks
 
Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...
Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...
Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...
Daniel Hochman
 
Common Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta LakehouseCommon Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta Lakehouse
Databricks
 
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Databricks
 
Improving Kafka at-least-once performance at Uber
Improving Kafka at-least-once performance at UberImproving Kafka at-least-once performance at Uber
Improving Kafka at-least-once performance at Uber
Ying Zheng
 
A glimpse of cassandra 4.0 features netflix
A glimpse of cassandra 4.0 features   netflixA glimpse of cassandra 4.0 features   netflix
A glimpse of cassandra 4.0 features netflix
Vinay Kumar Chella
 
Apache Spark Architecture
Apache Spark ArchitectureApache Spark Architecture
Apache Spark Architecture
Alexey Grishchenko
 
HBaseCon 2015: Taming GC Pauses for Large Java Heap in HBase
HBaseCon 2015: Taming GC Pauses for Large Java Heap in HBaseHBaseCon 2015: Taming GC Pauses for Large Java Heap in HBase
HBaseCon 2015: Taming GC Pauses for Large Java Heap in HBase
HBaseCon
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to RedisDvir Volk
 
Inside HDFS Append
Inside HDFS AppendInside HDFS Append
Inside HDFS Append
Yue Chen
 
Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt...
 Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt... Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt...
Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt...
Databricks
 
HDFS for Geographically Distributed File System
HDFS for Geographically Distributed File SystemHDFS for Geographically Distributed File System
HDFS for Geographically Distributed File System
Konstantin V. Shvachko
 
Using Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into CassandraUsing Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into Cassandra
Jim Hatcher
 
Top 5 Mistakes to Avoid When Writing Apache Spark Applications
Top 5 Mistakes to Avoid When Writing Apache Spark ApplicationsTop 5 Mistakes to Avoid When Writing Apache Spark Applications
Top 5 Mistakes to Avoid When Writing Apache Spark Applications
Cloudera, Inc.
 
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UIData Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Altinity Ltd
 
Top 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationsTop 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applications
hadooparchbook
 

What's hot (20)

C* Summit 2013: The World's Next Top Data Model by Patrick McFadin
C* Summit 2013: The World's Next Top Data Model by Patrick McFadinC* Summit 2013: The World's Next Top Data Model by Patrick McFadin
C* Summit 2013: The World's Next Top Data Model by Patrick McFadin
 
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
 
Everything you ever needed to know about Kafka on Kubernetes but were afraid ...
Everything you ever needed to know about Kafka on Kubernetes but were afraid ...Everything you ever needed to know about Kafka on Kubernetes but were afraid ...
Everything you ever needed to know about Kafka on Kubernetes but were afraid ...
 
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
Cassandra Day NY 2014: Apache Cassandra & Python for the The New York Times ⨍...
 
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
 
Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...
Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...
Geospatial Indexing at Scale: The 15 Million QPS Redis Architecture Powering ...
 
Common Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta LakehouseCommon Strategies for Improving Performance on Your Delta Lakehouse
Common Strategies for Improving Performance on Your Delta Lakehouse
 
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
 
Improving Kafka at-least-once performance at Uber
Improving Kafka at-least-once performance at UberImproving Kafka at-least-once performance at Uber
Improving Kafka at-least-once performance at Uber
 
A glimpse of cassandra 4.0 features netflix
A glimpse of cassandra 4.0 features   netflixA glimpse of cassandra 4.0 features   netflix
A glimpse of cassandra 4.0 features netflix
 
Apache Spark Architecture
Apache Spark ArchitectureApache Spark Architecture
Apache Spark Architecture
 
HBaseCon 2015: Taming GC Pauses for Large Java Heap in HBase
HBaseCon 2015: Taming GC Pauses for Large Java Heap in HBaseHBaseCon 2015: Taming GC Pauses for Large Java Heap in HBase
HBaseCon 2015: Taming GC Pauses for Large Java Heap in HBase
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
 
Inside HDFS Append
Inside HDFS AppendInside HDFS Append
Inside HDFS Append
 
Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt...
 Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt... Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt...
Apply Hammer Directly to Thumb; Avoiding Apache Spark and Cassandra AntiPatt...
 
HDFS for Geographically Distributed File System
HDFS for Geographically Distributed File SystemHDFS for Geographically Distributed File System
HDFS for Geographically Distributed File System
 
Using Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into CassandraUsing Spark to Load Oracle Data into Cassandra
Using Spark to Load Oracle Data into Cassandra
 
Top 5 Mistakes to Avoid When Writing Apache Spark Applications
Top 5 Mistakes to Avoid When Writing Apache Spark ApplicationsTop 5 Mistakes to Avoid When Writing Apache Spark Applications
Top 5 Mistakes to Avoid When Writing Apache Spark Applications
 
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UIData Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
 
Top 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationsTop 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applications
 

Similar to Architecture of Tech Interviews

Architecture of interviews gayle laakmann mcdowell
Architecture of interviews   gayle laakmann mcdowellArchitecture of interviews   gayle laakmann mcdowell
Architecture of interviews gayle laakmann mcdowell
Talent42
 
How to Hire Software Engineers: Best and Worst Practices
How to Hire Software Engineers: Best and Worst PracticesHow to Hire Software Engineers: Best and Worst Practices
How to Hire Software Engineers: Best and Worst Practices
Gayle McDowell
 
Gayle Laakmann McDowell - Talent42 2015
Gayle Laakmann McDowell - Talent42 2015Gayle Laakmann McDowell - Talent42 2015
Gayle Laakmann McDowell - Talent42 2015Talent42
 
Creating the (Im)perfect Developer Interview
Creating the (Im)perfect Developer InterviewCreating the (Im)perfect Developer Interview
Creating the (Im)perfect Developer Interview
Gayle McDowell
 
Prepping Your Engineering Candidates to Reduce Your False Negatives
Prepping Your Engineering Candidates to Reduce Your False NegativesPrepping Your Engineering Candidates to Reduce Your False Negatives
Prepping Your Engineering Candidates to Reduce Your False Negatives
Gayle McDowell
 
How to Interview Like Google (But Better) - SVCC
How to Interview Like Google (But Better) - SVCCHow to Interview Like Google (But Better) - SVCC
How to Interview Like Google (But Better) - SVCC
Gayle McDowell
 
Cracking the PM Interview
Cracking the PM InterviewCracking the PM Interview
Cracking the PM Interview
Gayle McDowell
 
Cracking the Product Manager Interview
Cracking the Product Manager InterviewCracking the Product Manager Interview
Cracking the Product Manager Interview
Gayle McDowell
 
Cracking the PM Interview
Cracking the PM InterviewCracking the PM Interview
Cracking the PM Interview
Gayle McDowell
 
Hiring Great Product Managers
Hiring Great Product ManagersHiring Great Product Managers
Hiring Great Product Managers
Gayle McDowell
 
Conducting Effective Job Interviews.pptx
Conducting Effective Job Interviews.pptxConducting Effective Job Interviews.pptx
Conducting Effective Job Interviews.pptx
Gina Meronek
 
Talent42 2014 Gayle Laakmann McDowell - Interviewing A- Players (1)
Talent42 2014 Gayle Laakmann McDowell -  Interviewing A- Players (1)Talent42 2014 Gayle Laakmann McDowell -  Interviewing A- Players (1)
Talent42 2014 Gayle Laakmann McDowell - Interviewing A- Players (1)
Talent42
 
Reverse Engineering Engineering Interviewing: How to Be a Great Interviewer
Reverse Engineering Engineering Interviewing: How to Be a Great InterviewerReverse Engineering Engineering Interviewing: How to Be a Great Interviewer
Reverse Engineering Engineering Interviewing: How to Be a Great Interviewer
Gayle McDowell
 
Cracking the Coding Interview (Oct 2012)
Cracking the Coding Interview (Oct 2012)Cracking the Coding Interview (Oct 2012)
Cracking the Coding Interview (Oct 2012)
careercup
 
How to Get a Job at Google
How to Get a Job at GoogleHow to Get a Job at Google
How to Get a Job at GoogleEvisors
 
Why Methods Trump Methodology
Why Methods Trump MethodologyWhy Methods Trump Methodology
Why Methods Trump Methodology
Jess McMullin
 
Conversion Optimization Webninar with Peep Laja
Conversion Optimization Webninar with Peep Laja Conversion Optimization Webninar with Peep Laja
Conversion Optimization Webninar with Peep Laja
Optimizely
 
Conversion Optimization with Peep Laja
Conversion Optimization with Peep LajaConversion Optimization with Peep Laja
Conversion Optimization with Peep Laja
Ella Quivooij
 
Cracking the Coding & PM Interview (Jan 2014)
Cracking the Coding & PM Interview (Jan 2014)Cracking the Coding & PM Interview (Jan 2014)
Cracking the Coding & PM Interview (Jan 2014)
Gayle McDowell
 
Tales from the Whiteboard
Tales from the WhiteboardTales from the Whiteboard
Tales from the Whiteboard
Toby Matejovsky
 

Similar to Architecture of Tech Interviews (20)

Architecture of interviews gayle laakmann mcdowell
Architecture of interviews   gayle laakmann mcdowellArchitecture of interviews   gayle laakmann mcdowell
Architecture of interviews gayle laakmann mcdowell
 
How to Hire Software Engineers: Best and Worst Practices
How to Hire Software Engineers: Best and Worst PracticesHow to Hire Software Engineers: Best and Worst Practices
How to Hire Software Engineers: Best and Worst Practices
 
Gayle Laakmann McDowell - Talent42 2015
Gayle Laakmann McDowell - Talent42 2015Gayle Laakmann McDowell - Talent42 2015
Gayle Laakmann McDowell - Talent42 2015
 
Creating the (Im)perfect Developer Interview
Creating the (Im)perfect Developer InterviewCreating the (Im)perfect Developer Interview
Creating the (Im)perfect Developer Interview
 
Prepping Your Engineering Candidates to Reduce Your False Negatives
Prepping Your Engineering Candidates to Reduce Your False NegativesPrepping Your Engineering Candidates to Reduce Your False Negatives
Prepping Your Engineering Candidates to Reduce Your False Negatives
 
How to Interview Like Google (But Better) - SVCC
How to Interview Like Google (But Better) - SVCCHow to Interview Like Google (But Better) - SVCC
How to Interview Like Google (But Better) - SVCC
 
Cracking the PM Interview
Cracking the PM InterviewCracking the PM Interview
Cracking the PM Interview
 
Cracking the Product Manager Interview
Cracking the Product Manager InterviewCracking the Product Manager Interview
Cracking the Product Manager Interview
 
Cracking the PM Interview
Cracking the PM InterviewCracking the PM Interview
Cracking the PM Interview
 
Hiring Great Product Managers
Hiring Great Product ManagersHiring Great Product Managers
Hiring Great Product Managers
 
Conducting Effective Job Interviews.pptx
Conducting Effective Job Interviews.pptxConducting Effective Job Interviews.pptx
Conducting Effective Job Interviews.pptx
 
Talent42 2014 Gayle Laakmann McDowell - Interviewing A- Players (1)
Talent42 2014 Gayle Laakmann McDowell -  Interviewing A- Players (1)Talent42 2014 Gayle Laakmann McDowell -  Interviewing A- Players (1)
Talent42 2014 Gayle Laakmann McDowell - Interviewing A- Players (1)
 
Reverse Engineering Engineering Interviewing: How to Be a Great Interviewer
Reverse Engineering Engineering Interviewing: How to Be a Great InterviewerReverse Engineering Engineering Interviewing: How to Be a Great Interviewer
Reverse Engineering Engineering Interviewing: How to Be a Great Interviewer
 
Cracking the Coding Interview (Oct 2012)
Cracking the Coding Interview (Oct 2012)Cracking the Coding Interview (Oct 2012)
Cracking the Coding Interview (Oct 2012)
 
How to Get a Job at Google
How to Get a Job at GoogleHow to Get a Job at Google
How to Get a Job at Google
 
Why Methods Trump Methodology
Why Methods Trump MethodologyWhy Methods Trump Methodology
Why Methods Trump Methodology
 
Conversion Optimization Webninar with Peep Laja
Conversion Optimization Webninar with Peep Laja Conversion Optimization Webninar with Peep Laja
Conversion Optimization Webninar with Peep Laja
 
Conversion Optimization with Peep Laja
Conversion Optimization with Peep LajaConversion Optimization with Peep Laja
Conversion Optimization with Peep Laja
 
Cracking the Coding & PM Interview (Jan 2014)
Cracking the Coding & PM Interview (Jan 2014)Cracking the Coding & PM Interview (Jan 2014)
Cracking the Coding & PM Interview (Jan 2014)
 
Tales from the Whiteboard
Tales from the WhiteboardTales from the Whiteboard
Tales from the Whiteboard
 

More from Gayle McDowell

Cracking the Product Manager Interview
Cracking the Product Manager InterviewCracking the Product Manager Interview
Cracking the Product Manager Interview
Gayle McDowell
 
Cracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
Cracking the Interview Skills (Coding, Soft Skills, Product Management) HandoutsCracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
Cracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
Gayle McDowell
 
Cracking the Algorithm & Coding Interview
Cracking the Algorithm & Coding InterviewCracking the Algorithm & Coding Interview
Cracking the Algorithm & Coding Interview
Gayle McDowell
 
Cracking the Coding Interview
Cracking the Coding InterviewCracking the Coding Interview
Cracking the Coding Interview
Gayle McDowell
 
Transitioning from Engineering to Product Management
Transitioning from Engineering to Product ManagementTransitioning from Engineering to Product Management
Transitioning from Engineering to Product Management
Gayle McDowell
 
Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...
Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...
Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...
Gayle McDowell
 

More from Gayle McDowell (6)

Cracking the Product Manager Interview
Cracking the Product Manager InterviewCracking the Product Manager Interview
Cracking the Product Manager Interview
 
Cracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
Cracking the Interview Skills (Coding, Soft Skills, Product Management) HandoutsCracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
Cracking the Interview Skills (Coding, Soft Skills, Product Management) Handouts
 
Cracking the Algorithm & Coding Interview
Cracking the Algorithm & Coding InterviewCracking the Algorithm & Coding Interview
Cracking the Algorithm & Coding Interview
 
Cracking the Coding Interview
Cracking the Coding InterviewCracking the Coding Interview
Cracking the Coding Interview
 
Transitioning from Engineering to Product Management
Transitioning from Engineering to Product ManagementTransitioning from Engineering to Product Management
Transitioning from Engineering to Product Management
 
Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...
Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...
Interviewing Great Developers: Reverse Engineering Interview Coaching to Crea...
 

Architecture of Tech Interviews

  • 1. GayleL. McDowell | Founder/ CEO, CareerCup gayle in/gaylemcdgayle The Architecture of Interviews Consistency+ Efficiency+ High Bar + Happiness June7, 2016 | Talent42
  • 3. gayle in/gaylemcdgayle 3Gayle Laakmann McDowell They Don’t Know…  Howmany interviews  Who will be interviewing  If they’ll code?How?  What they need to know  Howdecision gets made  WHY? Lotsofmyths (andmisinformation)!
  • 5. Gayle Laakmann McDowell 5gayle in/gaylemcdgayle Consistency & Efficiency Consistency  Outcome  Process  Questions Efficiency  Speedy process  Able to expedite  Minimal overhead  Minimal false negatives
  • 6. Gayle Laakmann McDowell 6gayle in/gaylemcdgayle High Bar & Happiness High Bar  Minimize false positives  Good, adaptable people Happiness  Enjoyable experience  Makes company look good  Transparency
  • 7. 7 gayle in/gaylemcdgayle The Process Resume Selection Intro Call w/ Recruiter Email that outlines process Code Assessment Phone Interview ~4 onsite interviews Discussion & Decision “Sell” Call / Dinner
  • 8. gayle in/gaylemcdgayle 8Gayle Laakmann McDowell Stuff I’ll Discuss  BarRaisersvs. Hiring Committees  OfflineWork  Homework vs code assessment tools  QuestionStyle  Knowledge, algorithms, pair programming  Coding Platform  Real code vs. pseudocode  Whiteboard vs. computer
  • 9. Bar Raisers or Hiring Committees So different, yet so similar 01
  • 10. Gayle Laakmann McDowell 10gayle in/gaylemcdgayle Bar Raisers andHC Offer transparency Offer consistency Keepbar high Facilitatechange Can override manager
  • 11. gayle in/gaylemcdgayleGayle Laakmann McDowell 11 HiringCommittee Cons  Overhead  Delays  Un-empowering  Can feel “black box”  Need good feedback Pros  Cross-company consistency  Keeps barhigh  Easierto improveprocess
  • 12. Gayle Laakmann McDowell 12gayle in/gaylemcdgayle Who’s it good for? Companies that:  See5or more devcandidatesperweek  Wanttoimproveprocess  Hireforcompany,notteam  Arenotveryknowledgefocused Easier to implement early!
  • 13. gayle in/gaylemcdgayleGayle Laakmann McDowell 13 HiringCommittee: Best Practices Meet at least 2x per week Multiple HCs:  Beware ofbarcreep /inconsistencies Let interviewers observe HC Traininterviewers to write feedback Quality of decisions rests onfeedback
  • 14. gayle in/gaylemcdgayleGayle Laakmann McDowell 14 Bar Raisers Cons  Need consistency across company  Need to scale team Pros  Many ofHC benefits:  Consistency  High bar  Transparency  But easierto implement  No bottleneck
  • 15. gayle in/gaylemcdgayleGayle Laakmann McDowell 15 Bar Raisers:Best Practices  Select people who areinherently good  Experiencedatinterviewing  Nice, empathetic  Smart&can challengecandidate  Train them thoroughly  Empowerthem  Assign outside of team  Watch out for scale/exhaustion!
  • 17. Gayle Laakmann McDowell 17gayle in/gaylemcdgayle OfflineAssessments Homework Projects Code Assessment Tools
  • 18. gayle in/gaylemcdgayleGayle Laakmann McDowell 18 Homework Projects Big Very Practical Some love this Lesscheating  Except:algos Too immediate Needs eng time Disproportionate workload Scales poorly for candidate
  • 19. gayle in/gaylemcdgayleGayle Laakmann McDowell 19 Homework: Best Practices Show candidate interestfirst < 4 hours  If >4, onsite project review Architecture, not algorithms Define review criteria Avoid confusion with company work
  • 20. gayle in/gaylemcdgayleGayle Laakmann McDowell 20 Homework: Who It’s Good For Language focused  Low priority on algorithms / thought process Experienced candidates (maybe)
  • 21. gayle in/gaylemcdgayleGayle Laakmann McDowell 21 Code Assessment Tools Fast, cheap eval  Morecandidates  Non-traditional Sets expectations for onsite Consistent data point Cheating May turn off senior candidates
  • 22. gayle in/gaylemcdgayleGayle Laakmann McDowell 22 ImplementationOptions Everyone Just your “maybe” candidates Fast-Track
  • 23. gayle in/gaylemcdgayleGayle Laakmann McDowell 23 Who It’s GoodFor Small, mid-sized, and big companies Value algorithms / problem solving Lots of candidates Want to look at non-traditional candidates
  • 24. gayle in/gaylemcdgayleGayle Laakmann McDowell 24 Code Assessment: Best Practices Show candidate interest first Beware of cheating  (But nobiggie!) Clearexpectations Pick GREAT questions  Similar to real interviews  Unique questions 1 – 2 hour test
  • 25. Question Style Pair programming, algorithms, knowledge 03
  • 26. Gayle Laakmann McDowell 26gayle in/gaylemcdgayle What ToAsk Knowledge Algorithms Design/Architecture Pairprogramming
  • 27. Gayle Laakmann McDowell 27gayle in/gaylemcdgayle Knowledge Questions Good whenyou can’t train skilleasily Best practice:  In-depth,ifat all  Keepita discussion
  • 28. Gayle Laakmann McDowell 28gayle in/gaylemcdgayle Algorithm Questions Smartmatters. Good for everyone Best practices:  Clear expectations with interviewers & candidates  Ask medium-to-hard & unusual questions
  • 29. Gayle Laakmann McDowell 29gayle in/gaylemcdgayle Design/Architecture Great for experienced candidates Shows communicationskills Best practice:  Prepcandidates.Big unknown!
  • 30. gayle in/gaylemcdgayleGayle Laakmann McDowell 30 PairProgramming  Many candidates enjoy it  Feels fair & real world  Assesses codestyle / structure  Shows interpersonal interaction  Less understood  Not greatfor algos  Interviewer really matters  Biased by tools
  • 31. Gayle Laakmann McDowell 31gayle in/gaylemcdgayle PairProgramming: Best Practices  Prep/warn candidates  Need GREAT interviewer  Give choice of problems  Okay/good to pick unreasonably big problems  Guide candidates  (Okaytoaskquestions,notknowtools,etc.)
  • 33. Gayle Laakmann McDowell 33gayle in/gaylemcdgayle Why We Make Them Code Can theyput“thoughts”into “actions”? Do they show good structure and style? Do they thinkabout theimpact of decisions?
  • 35. A Game with Secret Rules … and this is for a simple problem
  • 36. Gayle Laakmann McDowell 36gayle in/gaylemcdgayle Don’t Allow Pseudocode Unpredictable playing field Detailsmatter If “real code” is too hard for them…
  • 37. gayle in/gaylemcdgayleGayle Laakmann McDowell 37 How toCode Big Practical Stuff Use computer Pair Programming Small Stuff Algorithm-focused Computer or whiteboard
  • 38. gayle in/gaylemcdgayleGayle Laakmann McDowell 38 Buthow to code? whiteboard computer
  • 39. gayle in/gaylemcdgayleGayle Laakmann McDowell 39 A Case for Computers  Realistic. Allows tools.  Candidates feel more comfortable  (Especially experienced &diversity candidates)  Faster to write (often)  Morecode
  • 40. gayle in/gaylemcdgayleGayle Laakmann McDowell 40 The Downsideof Computers Oftenwrite stupid stuff Desperate attemptfor compilation Communicationshutsdown Biased by tools/laptop “Transition” betweenalgorithm & code
  • 41. gayle in/gaylemcdgayle 41 z Gayle Laakmann McDowell Computer Best Practices Let candidate bring laptop Instruct: not every detail Encourage communication and thinking Recognize the bias!
  • 42. gayle in/gaylemcdgayleGayle Laakmann McDowell 42 A Case for Whiteboards Encourages thinking & communication More language agnostic Consistent across candidates  Better laptop/tools doesn’t matter It’s “standard”
  • 43. gayle in/gaylemcdgayleGayle Laakmann McDowell 43 The Downsideof Whiteboards Slow to write Artificial environment Can be intimidating
  • 44. gayle in/gaylemcdgayle 44 z Gayle Laakmann McDowell Whiteboard Best Practices Encourage shorthand Be upbeat & encouraging Reasonable expectations
  • 45. gayle in/gaylemcdgayleGayle Laakmann McDowell 45 Recommendations If skill-focused: then Computer If algos-focused: then Whiteboard If a little of each: then Either/or  Both can work!  … with proper training  Whynot let candidate choose?
  • 47. gayle in/gaylemcdgayleGayle Laakmann McDowell 47 Thingsto Consider  BarRaisersor Hiring Committees  Code assessmenttools  Pairprogramming(forpracticalstuff)  Whiteboard(orpick-your-poison)foralgorithmsstuff