Architecture of interviews gayle laakmann mcdowell
Transcript of Architecture of interviews gayle laakmann mcdowell
6/13/2016
1
Gayle L. McDowell | Founder / CEO, CareerCup
gayle in/gaylemcdgayle
The Architecture of InterviewsConsistency + Efficiency + High Bar + Happiness
June 7, 2016 | Talent42
&candidates arefrustrated confused
6/13/2016
2
gayle in/gaylemcdgayle 3Gayle Laakmann McDowell
TheyDon’t
Know…
How many interviewsWho will be interviewing If they’ll code? How?What they need to know How decision gets madeWHY?
Lots of myths (and misinformation)!
&&companies need
consistency efficiencyhigh bar happiness
6/13/2016
3
Gayle Laakmann McDowell 5gayle in/gaylemcdgayle
Consistency & EfficiencyConsistency Outcome Process Questions
Efficiency Speedy process Able to expediteMinimal overheadMinimal false
negatives
Gayle Laakmann McDowell 6gayle in/gaylemcdgayle
High Bar & HappinessHigh BarMinimize false
positives Good, adaptable
people
Happiness Enjoyable experienceMakes company look
good Transparency
6/13/2016
4
7 gayle in/gaylemcdgayle
The ProcessResume SelectionResume Selection Intro Call w/ RecruiterIntro Call w/ Recruiter
Email that outlines processEmail that outlines process
Code AssessmentCode Assessment
Phone InterviewPhone Interview~4 onsite interviews~4 onsite interviewsDiscussion & DecisionDiscussion & Decision“Sell” Call / Dinner“Sell” Call / Dinner
gayle in/gaylemcdgayle 8Gayle Laakmann McDowell
StuffI’ll
Discuss
Bar Raisers vs. Hiring Committees Offline Work
Homework vs code assessment tools Question Style
Knowledge, algorithms, pair programming Coding Platform
Real code vs. pseudocode Whiteboard vs. computer
6/13/2016
5
Bar Raisers or Hiring CommitteesSo different, yet so similar
Gayle Laakmann McDowell 10gayle in/gaylemcdgayle
Bar Raisers and HCOffer transparencyOffer consistencyKeep bar highFacilitate changeCan override manager
6/13/2016
6
gayle in/gaylemcdgayleGayle Laakmann McDowell 11
Hiring CommitteeCons Overhead Delays Un-empowering Can feel “black box” Need good feedback
Pros Cross-company
consistency Keeps bar high Easier to improve
process
Gayle Laakmann McDowell 12gayle in/gaylemcdgayle
Who’s it good for?Companies that:
See 5 or more dev candidates per week Want to improve process Hire for company, not team Are not very knowledge focused
Easier to implement early!
6/13/2016
7
gayle in/gaylemcdgayleGayle Laakmann McDowell 13
Hiring Committee: Best PracticesMeet at least 2x per weekMultiple HCs:
Beware of bar creep / inconsistenciesLet interviewers observe HCTrain interviewers to write feedbackQuality of decisions rests on feedback
gayle in/gaylemcdgayleGayle Laakmann McDowell 14
Bar RaisersCons Need consistency
across company Need to scale team
ProsMany of HC benefits:
Consistency High bar Transparency
But easier to implement No bottleneck
6/13/2016
8
gayle in/gaylemcdgayleGayle Laakmann McDowell 15
Bar Raisers: Best Practices Select people who are inherently good
Experienced at interviewing Nice, empathetic Smart & can challenge candidate
Train them thoroughly Empower them Assign outside of teamWatch out for scale/exhaustion!
Offline AssessmentsHomework, code assessment tools, etc
6/13/2016
9
Gayle Laakmann McDowell 17gayle in/gaylemcdgayle
Offline AssessmentsHomework Projects Code Assessment Tools
gayle in/gaylemcdgayleGayle Laakmann McDowell 18
Homework ProjectsBigVery PracticalSome love thisLess cheating
Except: algos
Too immediateNeeds eng time Disproportionate
workloadScales poorly for candidate
6/13/2016
10
gayle in/gaylemcdgayleGayle Laakmann McDowell 19
Homework: Best PracticesShow candidate
interest first< 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 ForLanguage focused
Low priority on algorithms / thought processExperienced candidates (maybe)
6/13/2016
11
gayle in/gaylemcdgayleGayle Laakmann McDowell 21
Code Assessment ToolsFast, cheap eval
More candidates Non-traditional
Sets expectations for onsite
Consistent data point
CheatingMay turn off senior
candidates
gayle in/gaylemcdgayleGayle Laakmann McDowell 22
Implementation OptionsEveryoneJust your “maybe” candidatesFast-Track
6/13/2016
12
gayle in/gaylemcdgayleGayle Laakmann McDowell 23
Who It’s Good ForSmall, mid-sized, and big companiesValue algorithms / problem solvingLots of candidatesWant to look at non-traditional candidates
gayle in/gaylemcdgayleGayle Laakmann McDowell 24
Code Assessment: Best PracticesShow candidate
interest firstBeware of
cheating (But no biggie!)
Clear expectations
Pick GREAT questions Similar to real
interviews Unique questions
1 – 2 hour test
6/13/2016
13
Question StylePair programming, algorithms, knowledge
Gayle Laakmann McDowell 26gayle in/gaylemcdgayle
What To AskKnowledgeAlgorithmsDesign/ArchitecturePair programming
6/13/2016
14
Gayle Laakmann McDowell 27gayle in/gaylemcdgayle
Knowledge QuestionsGood when you can’t train skill easilyBest practice:
In-depth, if at all Keep it a discussion
Gayle Laakmann McDowell 28gayle in/gaylemcdgayle
Algorithm QuestionsSmart matters.Good for everyoneBest practices:
Clear expectations with interviewers & candidates Ask medium-to-hard & unusual questions
6/13/2016
15
Gayle Laakmann McDowell 29gayle in/gaylemcdgayle
Design/ArchitectureGreat for experienced candidatesShows communication skillsBest practice:
Prep candidates. Big unknown!
gayle in/gaylemcdgayleGayle Laakmann McDowell 30
Pair ProgrammingMany candidates
enjoy it Feels fair & real world Assesses code style /
structure Shows interpersonal
interaction
Less understood Not great for algos Interviewer really
matters Biased by tools
6/13/2016
16
Gayle Laakmann McDowell 31gayle in/gaylemcdgayle
Pair Programming: Best Practices Prep/warn candidates Need GREAT interviewer Give choice of problems Okay/good to pick unreasonably big problems Guide candidates
(Okay to ask questions, not know tools, etc.)
Coding PlatformWhiteboard vs. Computers
6/13/2016
17
Gayle Laakmann McDowell 33gayle in/gaylemcdgayle
Why We Make Them CodeCan they put “thoughts” into “actions”?Do they show good structure and style?Do they think about the impact of
decisions?
Why not pseudocode?
6/13/2016
18
A Game with Secret Rules
… and this is for a simple problem
Gayle Laakmann McDowell 36gayle in/gaylemcdgayle
Don’t Allow PseudocodeUnpredictable playing fieldDetails matterIf “real code” is too hard for them…
6/13/2016
19
gayle in/gaylemcdgayleGayle Laakmann McDowell 37
How to CodeBig Practical StuffUse computerPair Programming
Small StuffAlgorithm-
focusedComputer or
whiteboard
gayle in/gaylemcdgayleGayle Laakmann McDowell 38
But how to code?whiteboard computer
6/13/2016
20
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)
More code
gayle in/gaylemcdgayleGayle Laakmann McDowell 40
The Downside of ComputersOften write stupid stuffDesperate attempt for compilationCommunication shuts downBiased by tools/laptop“Transition” between algorithm & code
6/13/2016
21
gayle in/gaylemcdgayle 41
z
Gayle Laakmann McDowell
ComputerBest
Practices
Let candidate bring laptopInstruct: not every detailEncourage communication
and thinkingRecognize the bias!
gayle in/gaylemcdgayleGayle Laakmann McDowell 42
A Case for WhiteboardsEncourages thinking & communicationMore language agnosticConsistent across candidates Better laptop/tools doesn’t matter
It’s “standard”
6/13/2016
22
gayle in/gaylemcdgayleGayle Laakmann McDowell 43
The Downside of WhiteboardsSlow to writeArtificial environmentCan be intimidating
gayle in/gaylemcdgayle 44
z
Gayle Laakmann McDowell
WhiteboardBest
Practices
Encourage shorthandBe upbeat &
encouragingReasonable
expectations
6/13/2016
23
gayle in/gaylemcdgayleGayle Laakmann McDowell 45
RecommendationsIf skill-focused:
then ComputerIf algos-focused:
then WhiteboardIf a little of each:
then Either/or
Both can work!… with proper training
Why not let candidate choose?
Last Remarks
6/13/2016
24
gayle in/gaylemcdgayleGayle Laakmann McDowell 47
Things to Consider Bar Raisers or Hiring Committees Code assessment tools Pair programming (for practical stuff) Whiteboard (or pick-your-poison) for algorithms stuff
there is noperfect system