93
The Hiring Problem: Going Beyond Secretaries Sergei Vassilvitskii (Yahoo!) Andrei Broder (Yahoo!) Adam Kirsch (Harvard) Ravi Kumar (Yahoo!) Michael Mitzenmacher (Harvard) Eli Upfal (Brown)

The Hiring Problem

Embed Size (px)

DESCRIPTION

Twist on classic hiring secretary problem. Hire above a threshold, hire above the

Citation preview

Page 1: The Hiring Problem

The Hiring Problem:Going Beyond Secretaries

Sergei Vassilvitskii (Yahoo!)

Andrei Broder (Yahoo!)Adam Kirsch (Harvard)

Ravi Kumar (Yahoo!)Michael Mitzenmacher (Harvard)

Eli Upfal (Brown)

Page 2: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 3: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 4: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 5: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 6: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 7: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 8: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 9: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 10: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

n

Page 11: The Hiring Problem

The Secretary Problem

Interview candidates for a position one at a time. After each interview decide if the candidate is the best.

Goal: maximize the probability of choosing the best candidate.

This is not about hiring secretaries, but about decision making under uncertainty.

n

Page 12: The Hiring Problem

The Hiring Problem

Page 13: The Hiring Problem

The Hiring Problem

A startup is growing and is hiring many employees:

Want to hire good employees

Can’t wait for the perfect candidate

Page 14: The Hiring Problem

The Hiring Problem

A startup is growing and is hiring many employees:

Want to hire good employees

Can’t wait for the perfect candidate

Many potential objectives.

Explore the tradeoff between number of interviews & the average quality.

Page 15: The Hiring Problem

The Hiring model

Candidates arrive one at a time.

Assume all have iid uniform(0,1) quality scores - For applicant denote it by .

(Can deal with other distributions, not this talk)

i iq

Page 16: The Hiring Problem

The Hiring model

Candidates arrive one at a time.

Assume all have iid uniform(0,1) quality scores - For applicant denote it by .

(Can deal with other distributions, not this talk)

During the interview:

Observe

Decide whether to hire or reject

i iq

iq

Page 17: The Hiring Problem

Strategies

Page 18: The Hiring Problem

Strategies

Hire above a threshold.

Page 19: The Hiring Problem

Strategies

Hire above a threshold.

Hire above the minimum or maximum.

Page 20: The Hiring Problem

Strategies

Hire above a threshold.

Hire above the minimum or maximum.

Lake Wobegon Strategies:

“Lake Wobegon: where all the women are strong, all the men are good looking, and all the children are above average”

Page 21: The Hiring Problem

Strategies

Hire above a threshold.

Hire above the minimum or maximum.

Lake Wobegon Strategies:

Hire above the average (mean or median)

Page 22: The Hiring Problem

Strategies

Hire above a threshold.

Hire above the minimum or maximum.

Lake Wobegon Strategies:

Hire above the average

Side note: [Google Research Blog - March ‘06]:

“... only hire candidates who are above the mean of the current employees...”

Page 23: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

Page 24: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

Page 25: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t

Page 26: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t

Page 27: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t

Page 28: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t t

Page 29: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t t

Page 30: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t t

Page 31: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t t t

Page 32: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t t t

Page 33: The Hiring Problem

Threshold Hiring

Set a threshold , hire if .t iq ! t

t t t

Page 34: The Hiring Problem

Threshold Analysis

Set a threshold , hire if .

Easy to see that average quality approaches

Hiring rate .

t iq ! t

11! t

1 + t

2

Page 35: The Hiring Problem

Threshold Analysis

Set a threshold , hire if .

Easy to see that average quality approaches

Hiring rate .

t iq ! t

11! t

Quality stagnates and does not increase with time.

1 + t

2

Page 36: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 37: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 38: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 39: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 40: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 41: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 42: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 43: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 44: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 45: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 46: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 47: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 48: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 49: The Hiring Problem

Hire only if better than everyone already hired.

Maximum Hiring

Page 50: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

q

hi

Page 51: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Page 52: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn!1

Page 53: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn!1

gn ! Unif(0, gn!1)

Page 54: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn!1

gn ! Unif(0, gn!1)

E[gn|gn!1] =gn!1

2

Page 55: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn!1

gn ! Unif(0, gn!1)

E[gn|gn!1] =gn!1

2

E[gn] =1! q

2n

Page 56: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn!1

gn ! Unif(0, gn!1)

E[gn|gn!1] =gn!1

2

E[gn] =1! q

2n Very high quality!

Page 57: The Hiring Problem

Maximum Analysis

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn!1

gn ! Unif(0, gn!1)

E[gn|gn!1] =gn!1

2

E[gn] =1! q

2n Extremely slow hiring!

Page 58: The Hiring Problem

Lake Wobegon Strategies

Page 59: The Hiring Problem

Lake Wobegon Strategies

Above the mean:

Average quality after n hires: 1!1"n

Page 60: The Hiring Problem

Lake Wobegon Strategies

Above the mean:

Average quality after n hires:

Above the median:

Median quality after n hires:

1! 1"n

1! 1n

Page 61: The Hiring Problem

Lake Wobegon Strategies

Above the mean:

Average quality after n hires:

Above the median:

Median quality after n hires:

Surprising:

Tight concentration is not possible

Hiring above mean converges to a log-normal distribution

1! 1"n

1! 1n

Page 62: The Hiring Problem

Hiring Above Mean

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Page 63: The Hiring Problem

Hiring Above Mean

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn (in+1)q ! Unif(1" gn, 1)

Page 64: The Hiring Problem

Hiring Above Mean

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn (in+1)q ! Unif(1" gn, 1)

Therefore: gn+1 !n + 1n + 2

gn +1

n + 2Unif(0, gn)

Page 65: The Hiring Problem

Hiring Above Mean

Start with employee of quality

Let be the i-th candidate hired

Focus on the gap:

q

hi

gi = 1! (hi)q gi

Conditioned on :gn (in+1)q ! Unif(1" gn, 1)

= gn

!1! Unif(0, 1)

n + 2

"

Therefore: gn+1 !n + 1n + 2

gn +1

n + 2Unif(0, gn)

Page 66: The Hiring Problem

Hiring Above Mean

gn+1 = gn

!1! Unif(0, 1)

n + 2

"

Page 67: The Hiring Problem

Hiring Above Mean

Expand:

gn+1 = gn

!1! Unif(0, 1)

n + 2

"

gn+t = gn

t!

i=1

"1! Unif(0, 1)

n + i + 1

#

Page 68: The Hiring Problem

Hiring Above Mean

Expand:

gn+1 = gn

!1! Unif(0, 1)

n + 2

"

gn+t = gn

t!

i=1

"1! Unif(0, 1)

n + i + 1

#

Therefore:

gn ! (1" q)n!

i=1

"1" Unif(0, 1)

i + 1

#

Page 69: The Hiring Problem

Hiring Above Mean

Expand:

gn+1 = gn

!1! Unif(0, 1)

n + 2

"

gn+t = gn

t!

i=1

"1! Unif(0, 1)

n + i + 1

#

Therefore:

gn ! (1" q)n!

i=1

"1" Unif(0, 1)

i + 1

#

E[gn] = (1! q)n!

i=1

"1! 1

2(i + 1)

#= !(

1"n

)

Page 70: The Hiring Problem

Hiring Above Mean

Conclusion:

Average quality after hires:

Time to hire employees:

Very weak concentration results.

n 1!!(1"n

)

!(n3/2)n

Page 71: The Hiring Problem

Hiring Above Median

Start with employee of quality

When we have employees.

Compute median of the scores

Hire next applicants with scores above

q

2k + 1

2

mk

mk

Page 72: The Hiring Problem

Hiring Above Median

mk

Page 73: The Hiring Problem

Hiring Above Median

mk

New hires: with quality above mk

Page 74: The Hiring Problem

Hiring Above Median

mk

Page 75: The Hiring Problem

Hiring Above Median

mk+1

Page 76: The Hiring Problem

Hiring Above Median

mk

Page 77: The Hiring Problem

Hiring Above Median

mk

Inductive hypothesis: Unif(mk, 1)

Page 78: The Hiring Problem

Hiring Above Median

mk

Inductive hypothesis: Unif(mk, 1)

New hires: are Unif(mk, 1)

Page 79: The Hiring Problem

Hiring Above Median

mk

Unif(mk, 1)

Page 80: The Hiring Problem

Hiring Above Median

mk+1

Unif(mk, 1)

Page 81: The Hiring Problem

Hiring Above Median

mk+1

Unif(mk+1, 1)

Page 82: The Hiring Problem

Hiring Above Median

mk+1

Unif(mk+1, 1)Induction holds.

Page 83: The Hiring Problem

Hiring Above Median

Unif(mk, 1)

mk+1

Page 84: The Hiring Problem

The median:

Hiring Above Median

Unif(mk, 1)

mk+1

Page 85: The Hiring Problem

Hiring Above Median

Unif(mk, 1)

mk+1

The median: smallest of uniform r.v., each k + 1 Unif(mk, 1)

Page 86: The Hiring Problem

Hiring Above Median

Unif(mk, 1)

mk+1

The median: smallest of uniform r.v., each k + 1 Unif(0, g!k)

Page 87: The Hiring Problem

Hiring Above Median

Unif(mk, 1)

mk+1

g!k+1|g!

k ! g!kBeta(k + 2, 1)

The median: smallest of uniform r.v., each k + 1 Unif(0, g!k)

Page 88: The Hiring Problem

Hiring Above Median

Expand (like the means): g!k ! g

k!

i=1

Beta(i + 1, 1)

Page 89: The Hiring Problem

Hiring Above Median

Expand (like the means):

E[g!n] = !(

1n

)

g!k ! g

k!

i=1

Beta(i + 1, 1)

Page 90: The Hiring Problem

Hiring Above Median

Expand (like the means):

E[g!n] = !(

1n

)

Caveat: this is the median gap! The mean gap is: !(log n

n)

g!k ! g

k!

i=1

Beta(i + 1, 1)

Page 91: The Hiring Problem

Hiring Above Median

Conclusion:

Average quality after hires:

Time to hire employees:

Again, very weak concentration results.

n

n

1!!(log n

n)

!(n2)

Page 92: The Hiring Problem

Extensions

Interview preprocessing:

Self selection: quality may increase over time

Errors:

Noisy estimates on scores.

Firing:

Periodically fire bottom 10% (Jack Welch Strategy)

Similar analysis to the median.

Many more...

iq

Page 93: The Hiring Problem

Thank You