Slide 1

Slide 1 text

Great
 Technical Interviews Jeff Casimir / @j3 / turing.io

Slide 2

Slide 2 text

Building Teams

Slide 3

Slide 3 text

What are you
 really looking for?

Slide 4

Slide 4 text

What makes a developer 
 the right fit?

Slide 5

Slide 5 text

Years of experience?
 Mastery of a stack?

Slide 6

Slide 6 text

What about you?

Slide 7

Slide 7 text

Character changes slowly. Skills change quickly.

Slide 8

Slide 8 text

Let’s hire people for 
 who they’ll become,
 not what they’ve done.

Slide 9

Slide 9 text

The MVT

Slide 10

Slide 10 text

“I’ve never seen 
 a technical project fail 
 for technical reasons.”

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

Product < People

Slide 13

Slide 13 text

Each team has a set of 
 skill and cultural needs

Slide 14

Slide 14 text

Confidence Humility Collaboration Growth Empathy Grit Pitch Design / UI UX / Product Backend Ops Service

Slide 15

Slide 15 text

Collaboration Empathy Pitch Design / UI UX / Product Service Chelsea
 The Product Person

Slide 16

Slide 16 text

Jamie
 Data Cruncher Humility Collaboration Growth Backend Ops

Slide 17

Slide 17 text

+ =

Slide 18

Slide 18 text

Confidence Humility Collaboration Growth Empathy Grit Pitch Design / UI UX / Product Backend Ops Service

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

Instead of “fit”,
 find a complement

Slide 21

Slide 21 text

Stability & MVT

Slide 22

Slide 22 text

Right people at the
 right time

Slide 23

Slide 23 text

Teams stabilize like 
 the electrons of an atom

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

4 12 32 128

Slide 26

Slide 26 text

Confidence Humility Collaboration Growth Empathy Grit Sales Design / UI UX / Product Backend Ops Service 4 12 32 128

Slide 27

Slide 27 text

Stability Levels Risk Mission Skills Level A (4) Extreme Definers Hackers Level B (12) High Challengers Multiple Level C (32) Moderate Believers Specialists Level D (128) Low Followers Redundancy

Slide 28

Slide 28 text

Processes

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

Knowledge < Processes

Slide 31

Slide 31 text

Processes allow for
 iterative learning

Slide 32

Slide 32 text

Not following a script, writing the script

Slide 33

Slide 33 text

• Sketch out a plan • Relish uncertainty • Listen to the work • Correct course • Iterate the process

Slide 34

Slide 34 text

Finding process people

Slide 35

Slide 35 text

• Writers • Chemists • Musicians • Social Workers • Teachers • Bartenders

Slide 36

Slide 36 text

• Plan • Experiment • Listen • Correct

Slide 37

Slide 37 text

Potential beyond experience

Slide 38

Slide 38 text

Technical Interviews

Slide 39

Slide 39 text

What makes a strong
 interview process?

Slide 40

Slide 40 text

• Goals & Expectations • Aptitudes over abilities • Highlight differences • Mimic the business

Slide 41

Slide 41 text

Goals & Expectations

Slide 42

Slide 42 text

What will a new person 
 do for the team?

Slide 43

Slide 43 text

• Fix gaps • Accelerate capabilities • Reinforce critical areas • Specialize / Focus

Slide 44

Slide 44 text

What will your team
 do for them?

Slide 45

Slide 45 text

• New challenges/technologies • Industry recognition • Mentoring and growth • Put skills to the test

Slide 46

Slide 46 text

Personas for hiring

Slide 47

Slide 47 text

Who are you looking for?
 Who are they looking for?

Slide 48

Slide 48 text

Aptitudes: Empathy

Slide 49

Slide 49 text

The ability to understand the needs, feelings, frustrations, and passions of others

Slide 50

Slide 50 text

• Profile five customers • What are their needs, desires, skills, fears? • What will make them quit? Empathy: Measure It

Slide 51

Slide 51 text

• Compassion & sensitivity • Excitement for solutions • Understanding scope Empathy: What to Look For

Slide 52

Slide 52 text

• Indifference • Biases and -isms • Contempt Empathy: Watch Out For

Slide 53

Slide 53 text

No content

Slide 54

Slide 54 text

No content

Slide 55

Slide 55 text

Aptitudes: Iteration

Slide 56

Slide 56 text

The ability to integrate 
 new information into a process

Slide 57

Slide 57 text

• Collaborate on a puzzle (LSAT, tangrams, sudoku) • Teach along the way • Can they re-apply? Iterate? Improvement: Measure It

Slide 58

Slide 58 text

• Rational process • Patience & confidence • Changing course • Listening & application Improvement: What to Look For

Slide 59

Slide 59 text

• Plowing ahead • Desperation & leaps • Inability to explain Improvement: Watch Out For

Slide 60

Slide 60 text

Highlight Differences

Slide 61

Slide 61 text

An MVT puts differences
 at the forefront

Slide 62

Slide 62 text

No content

Slide 63

Slide 63 text

Monoculture kills

Slide 64

Slide 64 text

Your team should reflect your customers,
 not your founders

Slide 65

Slide 65 text

You can’t see yourself, get help.

Slide 66

Slide 66 text

Mimic the Business

Slide 67

Slide 67 text

When was your 
 last binary sort?

Slide 68

Slide 68 text

looking for “problem solvers”

Slide 69

Slide 69 text

Problems are one-time Processes are many-time

Slide 70

Slide 70 text

What processes do you use?

Slide 71

Slide 71 text

Can your interview 
 mimic those processes?

Slide 72

Slide 72 text

• Goals & Expectations • Aptitudes over abilities • Highlight differences • Mimic the business

Slide 73

Slide 73 text

Playbook

Slide 74

Slide 74 text

You get less than two weeks

Slide 75

Slide 75 text

• 1. Async Challenge • 2. Feedback/Revision Cycle • 3. Assess Aptitudes • 4. Live Collaboration • 5. Final Decision

Slide 76

Slide 76 text

• 4-8 hours of work • 3 days to submit • Use git & GitHub 1. Async Challenge

Slide 77

Slide 77 text

• Start with working, tested code • Acceptance tests: 
 1 implemented, 
 1 pseudocode, 
 1 described 1. Async Challenge

Slide 78

Slide 78 text

• Example: 
 Simplistic CMS • Challenge Possibilities:
 Implement versioning of pages
 Permissions to control authorship
 Future/timed publishing 1. Async Challenge

Slide 79

Slide 79 text

• Submission: 
 Send a pull request 1. Async Challenge

Slide 80

Slide 80 text

• Review code in the PR • Add one additional acceptance test based on weaknesses • Less than four hours work • Two days to complete 2. Feedback/Revision Cycle

Slide 81

Slide 81 text

• They update the PR • You review/comment • Make the move-forward decision 2. Feedback/Revision Cycle

Slide 82

Slide 82 text

• Based on your identified weaknesses • Collaborate on targeted exercises • This is not programming! 3. Assess Aptitudes

Slide 83

Slide 83 text

• Propose a next revision/addition to what they’ve built • Pair to write the acceptance test • Pair to write the implementation • Use a rubric to evaluate 4. Live Collaboration

Slide 84

Slide 84 text

• Return to your original goals • Do they have the skills now 
 to be productive? • Do they have the aptitudes to
 become great? • Make the call within 24 hours 5. Final Decision

Slide 85

Slide 85 text

• 1. Async Challenge • 2. Feedback/Revision Cycle • 3. Assess Aptitudes • 4. Live Collaboration • 5. Final Decision

Slide 86

Slide 86 text

The Movement

Slide 87

Slide 87 text

No content

Slide 88

Slide 88 text

No content

Slide 89

Slide 89 text

“If you can do the job,
 then you should get the job.”

Slide 90

Slide 90 text

TechHire

Slide 91

Slide 91 text

Hire for who they’ll become,
 not what they’ve done. Jeff Casimir / @j3 / turing.io