Introduction to Computational Social Science · an explorable
What is the best strategy for finding a job?
Mathematics has a famous answer: look at the first 37% of your options, then take the next one that beats them all. Here you will see where that answer comes from and why it is right for the question it answers. Then we change the question, step by step, until it looks more like a real job search. Along the way you will build, run and take apart a model of human behaviour, which is what computational social scientists do.
A teaching model. It finds the best strategy inside a simplified world. It is not the best strategy for your own job search, and it is not career advice.
When should you stop looking and take a job? A famous rule says: spend the first part of your search only looking, then accept the first offer that beats everything you have seen so far. Behind it is a real theorem. We will derive it, and then question it.
Imagine you will get a known number of job offers, N, one at a time and in random order. You can see how each offer compares with the ones before, but you have no absolute scale. You must answer each offer before the next one comes, and an offer you decline is gone. You take only one job, and you "win" only if you take the single best of all N. Which strategy gives you the best chance of winning? This is the classic secretary problem, usually told from the employer's side: interview applicants one by one and hire on the spot (Ferguson, 1989). Here we look at it from the job seeker's side. Its premises:
One choice. You take exactly one job.
Known number. You know in advance how many offers you will get.
Random order. Offers arrive in random order.
Ranks only. You can only compare an offer with the ones before; you have no idea what is out there.
No going back. An offer you decline is gone.
Only the best counts. The second-best job is as bad as no job.
The job is always yours. The premise nobody states. We return to it in Part 4.
Try it
You will get 20 job offers during a 34-week search, one at a time. Each offer has a score, and higher is better. Nobody tells you what a typical score is or how high scores go: you learn that only from the offers you see. For each offer, accept it or decline and keep looking. If you decline all 20, you end the search with no job.
This interactive needs JavaScript.
Where 37% comes from, step by step
Choose a family of strategies
Consider the rule: look at the first k offers without accepting any, then leap at the first offer that beats every offer so far. Under the premises above, the best possible strategy has exactly this form (Ferguson, 1989). So our only job is to find the best k.
When does the rule win?
Suppose the very best offer comes at position i.
If i ≤ k, we skipped it, and we lose.
If i > k, we reach it only if no offer between k and i tempted us first. That happens exactly when the best of the first i − 1 offers came in the looking zone. Because the order is random, that offer is equally likely to be anywhere among the i − 1, so the chance is k/(i − 1).
Add up over every position
The best offer comes at each position with probability 1/N, so the chance of winning is
P(win) = (k/N) · (1/k + 1/(k+1) + … + 1/(N−1))
Best at position i
Chance
Term
Running total
Let N grow
Write x = k/N for the share you look at. The sum in brackets is close to ln(N/k) = ln(1/x), so
P(win) ≈ x · ln(1/x)
Find the peak
Differentiate and set to zero: ln(1/x) − 1 = 0, so x = 1/e ≈ 0.368. The chance of winning there is also 1/e ≈ 0.368.
The price
The same logic shows that you take no job at all exactly when the best offer was in the looking zone, which happens with probability k/N = x. At the optimum, 37% of people who follow the rule end up with no job.
Exact chances for "skip the first k of N offers, then take the next offer that beats every offer so far", with the large-N approximation x·ln(1/x) dashed.
What the answer does and does not say
The 37% rule is the right answer to one question: how to maximise the chance of the single best job, under all seven premises. Change the question and the answer changes:
If what matters is how good your job is, not only whether it is the very best, the best look phase shrinks to about √N, about 10 out of 100 (Bearden, 2006).
If you can see how good offers are and know what is out there, there is no look phase at all: start with a high bar and lower it as time runs out (Gilbert & Mosteller, 1966; Guttman, 1960).
Part 2
Rethink the premises
A theorem is only as true as its premises. For each one, decide whether it is true of job hunting, then see what our model will do with it.
P1
You take exactly one job.
Kept. You take one job, and the search ends.
P2
You know how many offers you will get.
Loosened. How many offers you get is random, and offers may come more often early in a search than later.
P3
Offers arrive in random order.
Kept, to keep the model simple.
P4
You can only rank offers; you have no idea what is out there.
Loosened. You see how good each offer is. You start with an expectation of what offers are like, and you learn from every offer you see.
P5
No going back to an offer you declined.
Kept. In real life people sometimes do go back (see Part 5).
P6
Only the very best job counts.
Loosened. What counts is how good your job is; ending with no job is counted separately.
P7, the hidden one
Any job you choose is yours.
Loosened in Part 4. Companies can say no, and you do not know exactly how strong a candidate you are.
P8, our Part 4 model
You apply to one company at a time and wait for its answer.
Kept in Part 4. This is an assumption of our model, not of the theorem. Many people apply to several companies at once; then a rejection costs less time than it does in our model.
Loosened in our modelsKept as in the theorem
Loosening P2 already breaks a tempting shortcut
Suppose offers come mostly early in a search: the rate is steady for the first 4 weeks, then falls to about a sixth of that by week 34. This shape is illustrative, not measured. It is in the spirit of the finding that employers call back applicants less often the longer they have been looking for work (Kroft, Lange & Notowidigdo, 2013). With such a search, "37% of your search time" (week 12.6) comes only after about 61% of your offers have passed. That version leaves 61% of people with no job. "37% of your offers" switches in week 6.6 and leaves 37% with no job. The probability literature points the same way: when arrivals are spread out in time, set the cutoff by the expected share of arrivals, not by the calendar (Bruss, 1984).
Simulated searches in which offers come mostly early. The share of searches that end with a job in each week, under the two readings of "37%".
Once premises are loosened there is no tidy formula left. So we do what computational social scientists do: write down the rules for one simulated job seeker, an agent, and let a computer run thousands of searches.
Part 3
A one-sided model: loosening P2, P4 and P6
A model is a deliberately simplified world in which every assumption is written down. That makes it possible to check and argue with (Epstein, 2008). An agent-based model describes individuals by rules and lets patterns emerge from many simulated cases.
The agent
Which offers you get. Each offer has a score: everything you care about in a job (pay, the work, the people, the place) in one number. The agent does not know how scores are spread across all offers; it has to learn that. We describe a job by its percentile: a job at the 90th percentile is better than 90 in 100 offers.
When they arrive. A search lasts 34 weeks, about 8 months. The number of offers each week is random, around a rate that is either steady or mostly early.
What you expect. The agent starts with an expectation of what offers are like: high, medium or low, held weakly or strongly. After each offer it sees, it updates that expectation with Bayes' rule. The chart below lets you watch this happen.
What you do. Look for a while, or until you feel sure what is out there. Then accept the first offer that clears your bar:
better than every offer so far;
in the top 50%, 25% or 10% of what you believe is out there;
or a bar that falls over time.
Scores are measured in standard deviations (SD) from the average offer. 0 is average; +1 SD is better than about 84 in 100 offers; +2 SD, better than about 98 in 100; −1 SD, better than only about 16 in 100.
Expected offers per week, at about 102 in a 34-week search. The two shapes differ only in timing.
How an expectation meets experience.
One hundred job searches
Each square is one simulated job search. The board shows 100 searches; the numbers summarise 10,000. Click a square to replay that search.
Click a square to replay that search.
What the searches say: is there a best strategy in this world?
The benchmark is an oracle: an imaginary job seeker who knows everything, both what offers are like and exactly how many are still to come. The oracle takes a job in every search, with an average job at the 98th percentile (Guttman, 1960). Among strategies a person could actually follow:
1 Looking less is better for almost every goal.
Take the rule from Part 1: look first, then accept the first offer that beats every offer before. The only question is how long to look. Compare two ways, for people who get about 102 offers in a search:
Look at the first 37% (the classic rule). 38% end with no job. Those who take a job get an excellent one, around the 98th percentile, and 36% of all job seekers get the very best offer they ever see.
Look at only the first 10%. Only 10% end with no job. Jobs are only a little worse, around the 95th percentile, but only 23% get the very best.
So the short look wins on almost everything job seekers care about. The classic rule wins only if your goal is "the very best job or nothing". Notice the top panel: the share who end with no job is about the same as the share of offers you spend looking, just as step 6 of the derivation said.
Rule: look first, then accept the first offer that beats every offer so far. About 102 offers in a search, arriving at a steady rate; 10,000 searches per point. The marked points are the 10% look and the classic 37%.
2 A bar that comes down over time comes close to the oracle.
Instead of "beat every offer", use a bar that starts high and comes down as the weeks pass. After the same 37% look, accept only an offer better than 95% of the offers you have seen. Then lower that bar a little every week, so that by week 34 you would accept any offer better than half of them.
Everyone who uses this rule takes a job, with jobs around the 93rd percentile. To compare strategies with one number, we use a score: the job's percentile written from 0 to 1 (the 93rd percentile is 0.93), and 0 for ending with no job. The falling bar scores 0.929 and the oracle 0.982. The classic rule scores only 0.613, because the people who end with no job score 0.
3 Expectations matter only when you get few offers.
Imagine someone who gets only about 17 offers in a whole search, one every two weeks. They look at the first 20%, then accept the first offer in the top 10% of what they believe is out there. Before the first offer, they firmly believe that offers are mostly great (high expectation), average (medium) or mostly poor (low).
With high expectations, almost no offer looks like "top 10%", and 70% end with no job. With low expectations, only 6% do. With about 100 offers or more, almost nobody ends with no job, whatever they expected: there is enough experience to correct a wrong belief.
Share who end with no job, by expectation (held strongly), for three numbers of offers in a search. Strategy: look at the first 20%, then accept the top 10% by your belief. The lines for 102 and 340 offers lie on top of each other, near 0%.
4 Waiting until you are sure means waiting most of the search.
Another way to decide when to stop looking: keep looking until you are sure where the "top 10%" of offers begins. It is like guessing the height above which the tallest 10% of people stand. After 5 offers your guess can be far off; after 70 it is close. How sure you want to be changes everything (about 102 offers in a search, three a week):
Roughly sure: you start choosing in about week 5.3, and 100% take a job.
Quite sure: you start choosing only in about week 24.4, after seeing about 70 offers, and 17% end with no job.
Very sure: 102 offers are not enough. Nobody ever starts choosing.
5 A mistake that helps: optimism that experience slowly corrects.
Ana and Ben use the same plan: look at the first 5 offers, then accept any offer in the top 10% of what they believe is out there. The only difference is what they believe before they start.
Ben's expectation is right. His "top 10%" is close to the real top 10% from the start: the top 13% at first, the top 10% after 80 offers.
Ana is an optimist. She firmly believes offers are better than they really are, so what she calls "the top 10%" is really the top 1.5%: she is very choosy. Each offer she sees is a little worse than she expected. She slowly corrects her belief, and her bar comes down: the top 4% after 20 offers, the top 8% after 80.
Ana's mistake helps her. Being very choosy early, while many offers are still to come, and less choosy as time runs out is what the oracle does: the top 1.9% at first, the top 8% after 80 offers. Ana's score is 0.970, Ben's 0.925, the oracle's 0.982.
This explains a mechanism; it is not advice. With only about 17 offers in a search, the same optimism leaves 67% of people like Ana with no job (finding 3).
How choosy each one is after seeing m offers: the share of all offers their bar lets through. About 102 offers in a search; average over 1,000 simulated searches.
So, inside the one-sided model, the best strategy is a bar that starts high and falls as you learn and as time runs out. The 37% look phase is best only for a goal almost nobody has.
Your turn: the one-sided model
Change one thing at a time, and write down your prediction first. Your strategy is compared with the classic rule on the same searches.
Press Run.
Part 4
Two-sided: companies can say no (loosening P7)
So far every offer was yours to take. A real job search starts one step earlier: you see a job opening, you apply, and the company decides. Most applications fail. In a well-known field experiment, applicants needed to send about 10 résumés to get one call back for an interview, and more if their name sounded African-American (Bertrand & Mullainathan, 2004). A one-sided model also hides a second unknown: you do not know how strong a candidate you are.
The two-sided agent
You have a level of your own as a candidate, on the same scale as the jobs. Every simulated search gets a different one.
When you apply, the company says yes more often the less its job outranks you. A job at your own level says yes half the time; a job 1 SD above you, about 1 time in 20. This steepness is an illustrative choice.
Waiting costs time. You apply to one company at a time and wait for its answer. If the answer is no, the waiting time is lost: openings that appeared while you waited are gone. If the answer is yes, you take the job (we record the week you applied).
You start with a self-image (overconfident, accurate or underconfident) and learn your own level from every rejection, with Bayes' rule again, this time about yourself.
Two ways to aim:
Aim by the market: use the bar learned from the openings you have seen, as in Part 3.
Aim by yourself: apply to any job at your own level as you see it, plus a little ambition. Each rejection lowers your self-estimate, and your aim with it.
This is a model of one job seeker: other applicants competing for the same jobs are not modelled.
One hundred job searches, two-sided
The same 100 searches as in Part 3 (with openings arriving at a steady rate), but now you also have a level of your own as a candidate, and companies can reject you. Every agent looks at the first 10% of the openings they expect to see.
Click a square to replay that search, with every rejection.
What the searches say
All figures below use openings that arrive at a steady rate, about 102 in a search, and a 1-week wait for each reply.
6 When companies can say no, Part 3's strategies collapse.
Take the strategies from Part 3 and let companies reject you, with a 1-week wait for each reply. Every one of them finds a job less often. The classic rule falls furthest: from 62% of searches to 3%. A bar that falls over time keeps 56%, down from 100%.
Why does "beat every offer" fail so badly? A toy example with the scores from Part 1, where a typical score is about 10. You are a typical candidate. You have seen openings scoring 12, 9 and 15, so you apply to the next one that beats them all: a 22. A company that good will almost certainly reject a typical candidate. But that job still counts as one you have seen, so now you need an opening above 22, which is even more likely to reject you. And each rejection costs you the week you spent waiting for the answer.
Share who ever get a job when every offer is yours (Part 3) and when companies can say no (1-week wait for each reply). Same strategies, same searches.
7 Aiming by yourself works, and candidates sort into matching jobs.
Now a different rule. Forget the market and aim by yourself: "I apply to any job a little above my own level, as I see it." With an accurate self-image, 93% find a job, at a median of week 10.4.
Look at who ends up where (green line). Nobody in the model looks for a job at their own level. Yet candidates in the bottom third end up in jobs around the 26th percentile, the middle third around the 53rd, and the top third around the 81st. Stronger candidates end up in better jobs (correlation 0.88), only because of who says yes to whom. Economists call this sorting, and search models show when it can arise (Shimer & Smith, 2000).
Compare the other lines. In Part 3 (blue), everyone got a job around the 95th percentile, whoever they were. Aiming by the market (orange) gives jobs from the 68th to the 84th percentile, but only 56% find one (finding 6).
The average job's percentile for candidates in the bottom, middle and top third (those who find a job; 1-week wait for each reply).
8 Self-image matters most, and rejections cost the overconfident weeks.
Three job seekers aim by themselves, a little above where they think they are (+0.25 SD). They differ only in their self-image. With a 1-week wait for each reply:
Accurate:93% find a job, at a median of week 10.4.
Overconfident (thinks they are 1 SD better than they are, like an average candidate who believes they beat 84 in 100): only 63% find a job, at a median of week 20.7. They apply too high, are rejected, and lose a week each time.
Underconfident:97% find a job, early (median week 5.8), but in jobs below what they could have had: around the 44th percentile, against the 53rd.
The longer the wait for each reply, the more overconfidence costs: with a 2-week wait, only 43% of overconfident job seekers find a job. Real job seekers do tend to be too optimistic about their chances, especially after a long search (Mueller, Spinnewijn & Topa, 2021).
Share who ever find a job, by the wait for each reply and by self-image. Everyone aims by themselves, a little above their self-estimate (+0.25 SD).
So, in a two-sided world, the best strategy is to know yourself, aim a little above it, and let rejections teach you, rather than optimise against every opening you have seen.
Your turn: the two-sided model
Change one thing at a time, and write down your prediction first. Your strategy is compared with the classic rule in the same two-sided world, on the same searches.
Press Run.
Part 5
So, what is the best strategy?
Inside the models, "best" depends on what you want, how many offers you will get, what you know about jobs and about yourself, and whether companies choose you back. Each loosened premise changed the answer:
The classical answer (look 37%, then leap) is best only for "the single best job or nothing".
One-sided: a bar that starts high and falls with time.
Two-sided: know yourself, aim a little above it, and learn from rejections.
Even inside a toy world there is no single answer.
Outside the models, every result is conditional on assumptions that research on real job seekers contradicts:
The models' assumptions and the evidence about real job seekers
The models assume…
What research finds
Why it matters
Everyone agrees on how good a job is
People value the same job feature very differently. Most workers would not pay anything for a flexible schedule, but a minority would pay a lot (Mas & Pallais, 2017).
There may be no single scale to learn: the best job for one person is not the best for another.
You know how good a job is when you take it, and that stays fixed
How well a worker fits a job is learned only by doing it, and this learning helps explain why people change jobs (Jovanovic, 1979).
Decisions rest on guesses; taking a job does not end the search for a good fit.
You learn how strong a candidate you are
Job seekers are too optimistic about their chances, especially after a long search, and they do not lower their expectations as the search goes on (Mueller, Spinnewijn & Topa, 2021).
Our agents learn from every rejection; real people may not.
The world stays still while you search
Employers call back applicants less often the longer they have been out of work, with most of the drop in the first eight months (Kroft, Lange & Notowidigdo, 2013).
The longer you search, the worse your chances may get.
You never go back; others never search
A surprisingly large share of workers return to their previous employer after a spell without work (Fujita & Moscarini, 2017). And other people apply for the same jobs.
A real labour market is many searchers adapting to each other.
A rule is followed across a search
People use simple, noisy thresholds (Baumann et al., 2020). They learn a distribution across repeated searches (Goldstein et al., 2020), but a job search is not repeated hundreds of times.
Little chance to learn from your own mistakes.
Three ideas to take away
A model can explain, predict or illustrate, and these are different jobs (Hofman et al., 2021). These models illustrate. Even large teams with rich data struggle to predict individual life outcomes (Salganik et al., 2020).
Matching a pattern is not proof. The longer people have been out of work, the less often they find a job. That could mean employers avoid people with a long gap, or simply that the strongest candidates leave the pool first. The pattern alone cannot tell these apart. One way is an experiment: send résumés that differ in how long the applicant has been out of work, and see whether callbacks fall (Kroft, Lange & Notowidigdo, 2013). Many mechanisms can grow the same pattern (Epstein, 1999).
The value is in the disciplined argument. Writing the famous rule down exposed seven premises and a goal. Simulating it showed which ones matter: the goal, how many offers you get, how you learn, and whether companies choose you back.
The best strategy in these models is a falling bar set by what you have learned, about jobs and about yourself. The best strategy for your own job search is not something a model like this can tell you. Seeing exactly why is the point of the exercise.
Discussion
Goals. The 37% rule maximises the chance of "the best". What objective would you write down for a job search instead? Try the "value of ending with no job" slider.
Premises. Which premise did you vote "false" that our models still keep? How would you loosen it, and what would you predict?
Measurement. Our models need the number of offers or openings a person sees. How would you measure it for real, and what would that measurement miss?
Self-knowledge. In Part 4, self-image mattered more than strategy. Where do job seekers learn how strong a candidate they are, and how could that learning go wrong?
Validation. In Japan, 98.0% of university graduates who wanted a job had one by 1 April 2026 (MEXT & MHLW, 2026). Should a toy model try to match this? What would it prove if it did?
Ethics. Job platforms and hiring software rank applicants and suggest jobs. What changes when a model of human choice is used to steer choices rather than to understand them?
Further reading
Every reference was checked against its DOI registry or source page.
The puzzle and its mathematics
Ferguson, T. S. (1989). Who solved the secretary problem? Statistical Science, 4(3), 282–289. doi:10.1214/ss/1177012493
Gilbert, J. P., & Mosteller, F. (1966). Recognizing the maximum of a sequence. Journal of the American Statistical Association, 61(313), 35–73. doi:10.1080/01621459.1966.10502008
Guttman, I. (1960). On a problem of L. Moser. Canadian Mathematical Bulletin, 3(1), 35–39. doi:10.4153/cmb-1960-008-8
Bearden, J. N. (2006). A new secretary problem with rank-based selection and cardinal payoffs. Journal of Mathematical Psychology, 50(1), 58–59. doi:10.1016/j.jmp.2005.11.003
Bruss, F. T. (1984). A unified approach to a class of best choice problems with an unknown number of options. The Annals of Probability, 12(3), 882–889. doi:10.1214/aop/1176993237
Job search as a model of behaviour
McCall, J. J. (1970). Economics of information and job search. The Quarterly Journal of Economics, 84(1), 113–126. doi:10.2307/1879403
Jovanovic, B. (1979). Job matching and the theory of turnover. Journal of Political Economy, 87(5), 972–990. doi:10.1086/260808
Shimer, R., & Smith, L. (2000). Assortative matching and search. Econometrica, 68(2), 343–369. doi:10.1111/1468-0262.00112
Baumann, C., Singmann, H., Gershman, S. J., & von Helversen, B. (2020). A linear threshold model for optimal stopping behavior. PNAS, 117(23), 12750–12755. doi:10.1073/pnas.2002312117
Goldstein, D. G., McAfee, R. P., Suri, S., & Wright, J. R. (2020). Learning when to stop searching. Management Science, 66(3), 1375–1394. doi:10.1287/mnsc.2018.3245
Evidence about real job seekers
Bertrand, M., & Mullainathan, S. (2004). Are Emily and Greg more employable than Lakisha and Jamal? A field experiment on labor market discrimination. American Economic Review, 94(4), 991–1013. doi:10.1257/0002828042002561
Kroft, K., Lange, F., & Notowidigdo, M. J. (2013). Duration dependence and labor market conditions: Evidence from a field experiment. The Quarterly Journal of Economics, 128(3), 1123–1167. doi:10.1093/qje/qjt015
Mueller, A. I., Spinnewijn, J., & Topa, G. (2021). Job seekers' perceptions and employment prospects: Heterogeneity, duration dependence, and bias. American Economic Review, 111(1), 324–363. doi:10.1257/aer.20190808
Fujita, S., & Moscarini, G. (2017). Recall and unemployment. American Economic Review, 107(12), 3875–3916. doi:10.1257/aer.20131496
Mas, A., & Pallais, A. (2017). Valuing alternative work arrangements. American Economic Review, 107(12), 3722–3759. doi:10.1257/aer.20161500
Ministry of Education, Culture, Sports, Science and Technology & Ministry of Health, Labour and Welfare (2026, May 22). 令和7年度大学等卒業者の就職状況調査(4月1日現在) [Survey of the employment of 2026 university graduates, as of 1 April]. mext.go.jp
Why model? Computational social science
Epstein, J. M. (2008). Why model? Journal of Artificial Societies and Social Simulation, 11(4), 12. jasss.org
Hofman, J. M., et al. (2021). Integrating explanation and prediction in computational social science. Nature, 595, 181–188. doi:10.1038/s41586-021-03659-0
Salganik, M. J., et al. (2020). Measuring the predictability of life outcomes with a scientific mass collaboration. PNAS, 117(15), 8398–8403. doi:10.1073/pnas.1915006117
Methods and reproducibility
One-sided model
One agent per search, weeks 0–34. Weekly counts of offers are Poisson around a rate that is steady or mostly early, normalised to the same expected total. The mostly-early rate is an illustrative profile: flat for the first 4 weeks, then falling linearly to 47% of that level by week 13.5, 32% by week 23.5 and 16% by week 33.5. Offer scores are standard normal. Beliefs use a Normal–Inverse-Gamma prior (α₀ = 2, β₀ = 1; expectation −1, 0 or +1 SD; strength 1 or 10 pseudo-observations). "Until sure" means the 90% credible width of the agent's estimated top-10% line, in score units, falls below the set value. The falling bar relaxes from 95% to 50% of offers seen between the switch and week 34.
Two-sided model
The candidate's own level d is drawn from the same distribution as job scores. A company whose job scores r says yes with probability σ(3(d − r)). The self-image is N(d + bias, 1), updated on a 201-point grid after every rejection. After each rejection the agent sees no openings for the waiting time, and openings that appeared then are lost. "Aim by yourself" applies to any job scored at least self-estimate + ambition.
Time
The simulation engine counts time in abstract units; this page reads one unit as one week. Every rate, waiting time and bar is defined per unit, so the results do not depend on the unit chosen.
Runs
Every setting on this page was simulated for 10,000 searches, and the same searches are reused across settings and across both models. Seed 20261010.
Verification
25 of 25 engine tests pass. They include exact results, the optimal benchmarks, a brute-force re-implementation of the two-sided logic, and independent Python re-implementations of both models with different random numbers. The boards on this page are recomputed live by the same engine and match the precomputed results exactly.