← Files Lusha Talent SourcingARCHIVED FILE

skills/leadership-change-sourcing/SKILL.md

14.9 KB · Oct 7, 2026 · 00:25 UTC

↓ Download file

---
name: leadership-change-sourcing
description: Find people whose position changed because a senior leader above them left or was replaced. Use when the user asks who is in play after a leadership change, asks about executive departures or new executive hires at companies or in a market, asks to find people whose boss just left, or wants to source from companies that recently lost or replaced senior leadership. Returns people one level below the departure, grouped by company, each traced to the leadership event and its date.
---

# Leadership Change Sourcing

Read `references/shared-reference.md` first. It carries the terminology, the twenty hard rules, the
tenure mechanism, the ordering rules and the cost table. This file is the flow.

## What this skill is for

A VP of Engineering leaves. The engineering managers underneath have each been in
seat three years, several were probably in line for that job, and they are now
reporting to someone new or to nobody. For a few weeks they are the most
approachable they will ever be.

Anyone can find engineering managers in Berlin. Almost nobody is systematically
catching the weeks after their boss leaves. That window is the entire value of
this skill, which is why every person you return has to trace to a dated event.

**Language.** This skill finds **talent in play** after a leadership change, and
each person it returns is a **candidate**. "Three candidates are in play at
Klarna since their VP left" is right. Talent for the situation and the pool,
candidate for the individual. Shared reference section 1.

## Step 0. Ask, then restate

Ask at most three, skipping what you were told:

1. **Which companies**, or which market and size band if they have no list. This
   is the one you almost always need, because the signal is company-scoped.
2. **Which function.** Engineering, sales, finance, product.
3. **What level they are hiring at**, so you can search one level below the
   departure rather than guessing.
4. **How far back**, offered as a default: "I will look at the last three months,
   since the window closes fast. Say if you want longer."

Then restate before spending:

> Executive departures in engineering at the 25 fintechs on your list, last three
> months, then engineering managers and senior managers underneath. Checking those
> 25 employers will cost somewhere between 25 and 75 credits, empty ones included,
> and I will tell you the exact figure after. Running it.

## Step 1. Resolve the event types

`employer_event_filters`. Free. Confirm the current valid values rather than
assuming them, since the vocabulary changes. Hard rule 15: the vocabulary comes
from the tool, never from this file.

## Step 2. Find the leadership events

`employer_events` with `peopleNews`, narrowed via
`filters.include.newsEventTypes` to:

- **Executive Departure** — the strongest. Someone left and the layer below is
  exposed.
- **Executive Hire** — a new boss arrived. Different dynamic, same effect: the
  people who did not get the job are now reporting to an outsider.
- **Executive Promotion** — someone internal moved up, which usually means a peer
  did not.

25 companies per call. `startDate` set to the window. **Set `maxResultsPerSignal`
to 3.**

This call bills 1 credit per event returned plus 1 for the request: 5 events cost
6 credits, 14 cost 15, 39 cost 40. `maxResultsPerSignal` is therefore the price,
and three events per employer is plenty, because you are looking for one
leadership change rather than a news digest. The ceiling is employers × the cap
+ 1, so quote that before you run it, then report the `billing.creditsCharged`
the response returns.

## Step 2a. Check you got the right company

How badly this goes depends on the company. On ten European technology domains,
nine resolved correctly and spotify.com could not be identified at all. On five
large-group German domains, one resolved to the company a recruiter would mean:
bmw.com returned a nine-person entity called "BMW Car", getyourguide.com returned
"Sky Group" with 48 employees, mercedes-benz.com returned a Madrid services
subsidiary.

So be most suspicious on conglomerates, manufacturers and anything with national
subsidiaries, and least on a single-product technology company. Run the check
either way.

Before reporting any signal, compare the `companyName` that came back against the
company the recruiter named. If it differs by more than a legal suffix, say so and
do not present the signal as belonging to the company they asked about. Offer to
search by name instead of domain.

**An employer that returns nothing cannot be checked.** It comes back as an id and
an error code with no `companyName`, so a genuinely quiet company and a wrongly
resolved entity look identical. Report those as an empty result, never as evidence
that nothing happened there.

Ignore headcount percentages on entities under a few hundred people. BMW Car
reported a 4% headcount decrease while going from 9 employees to 9. That is
rounding, not contraction, and reporting it is worse than saying nothing.

## Step 2b. Filter the events yourself

The API window does not do it for you, and roughly two thirds of what comes back
will not survive this step. Measured on a 39-event sample across five employers,
plus an earlier 13-event sample.

**Read the article and decide for yourself.** `eventSummary` binds the wrong
company. One event read "Andrea D'Amico leaves Booking.com Limited as CEO"; the
article is about WeRoad, he is WeRoad's chief executive, Booking is where he used
to work, and he is stepping back from WeRoad to head hotels at Airbnb while
keeping a board seat. Another read "N26 hired Gino as CTO on Jul 1st '19", which
is a biographical sentence inside an article about that person leaving in 2026.

So the summary is a hint, not a finding. Read `articleTitle` and
`articleHighlight`, work out what happened, to whom and at which company, and
pick one of three verdicts. This is the most important judgement in the skill.

1. **It is a real change at the employer you asked about.** Report it in your own
   words, with the role, the direction and the date the article gives. Stepping
   back while keeping a board seat is not leaving; say what actually happened.
2. **It belongs to another company and your employer is only history.** A "former
   X" phrase is a past employer, not a current role, so there is no event at your
   employer. Say so and do not count it. If the company the article is really
   about is on the recruiter's list, report it there instead.
3. **The text does not say which company the role belongs to.** Drop it, say you
   dropped one as unverifiable, and do not reason your way to a company the
   sentence never names.

Full mechanism and the clause test in SHARED-REFERENCE section 6e.

**Keep an event only if `eventEffectiveDate` exists and falls inside the window
the recruiter asked for.** Null effective dates ran at 6 of 39 in one sample and 4
of 13 in another. Drop those rather than guessing, because the whole premise here
is timing. Dates outside the window do come back: `startDate` filters on when the
article was published, not when the event happened, and a six-month window
returned a CTO appointment dated July 2019.

**Separate announced from completed.** This is the biggest single bucket: 14 of 39
events were dated in the future, out to March 2027. A departure announced for next
quarter is a real signal, arguably a better one because the layer below is
unsettled for months, but never describe it as someone who has left. Say
"announced, effective 31 December 2026".

**Dedupe by person, then resolve the dates.** Thirty-nine events covered twenty-
seven people, so about a third were duplicates. Deduping is not enough on its own,
because the survivors contradict each other: Delivery Hero returned the same CEO
departure four times, dated 1 May 2026, 1 March 2027, 31 March 2027 and null.
Take the date from the most recently published article, and if the spread is more
than a few weeks say the date is contested. Reporting the earliest would have told
a recruiter a CEO left four months ago who is still in post.

**Drop events outside the function.** An executive change only puts people in play
if it sits above them. A chief marketing officer leaving does nothing for an
engineering brief. Technical events ran at 4 of 27 people in one sample and 1 of
13 in another, so expect to discard most of what you paid for and say so. When one
does land it is worth the whole sweep: N26 returned both an outgoing CTO effective
31 December 2026 and an incoming CTO effective 1 September 2026, which is the
cleanest trigger this skill can find.

**Not every Executive Hire is an executive.** One sample returned a celebrity
brand ambassador as Trade Republic's only executive hire, another returned an
advisory board appointment and a supervisory board seat. If the person's role is
not a line management position above the level being hired, it is not a trigger.

## Step 3. If nothing comes back, say so and offer the alternative

This is the most likely failure and you must handle it honestly.

> No executive departures on those 25 companies in the last three months. That
> either means it genuinely did not happen or that our coverage of exec news for
> these companies is thin, and I cannot tell you which from here. Want me to
> widen the window to six months, or switch to companies that cut headcount
> instead? Contraction is a weaker trigger but our coverage of it is better.

Do not pad an empty result. Do not present the absence of a signal as evidence
that nothing happened.

**The fallback is worth offering, because it works.** Run against the exact ten
companies that returned no executive event in a live sample, contraction signals
came back on six of them. So the offer is real rather than a polite exit.

**Known risk, now measured twice.** Thirteen of twenty-five employers fired an
executive event over six months with one unambiguously technical. On a second
sample of ten, five fired events and four of twenty-seven people were technical.
So coverage of executive news is real, and coverage of engineering leadership
specifically runs at roughly one in seven of what you pay for. Say that plainly
rather than implying the market is quiet. Open item on INF-3042.

## Step 4. Search one level below

For each company with a dated event, `talent_search` scoped to that
company, at the level below the person who left, with the tenure exclude applied.

Level mapping, roughly: a c-suite departure puts vice president and director in
play; a vice president departure puts director and manager in play; a director
departure puts manager and senior in play.

Tenure matters more here than anywhere else. Someone who joined four months ago
did not lose out on their boss's job and has no history to be frustrated about.
Keep the two-year exclude.

Then drop the wrong level, per SHARED-REFERENCE section 6a, and dedupe on the
candidate id, per 6d. The level filter matters more here than in a general search,
because "one level below the departure" is the entire claim you are making about
each person. A Senior Director returned under a senior filter is not one level
below a VP, and presenting them as though they were breaks the only thing this
skill sells.

## Step 5. Employer context, if there is more to add

Often the leadership event is the whole story and you can skip this. Add it only
if there is something else material, like the departure coming alongside a
headcount cut.

## Step 6. Order

Event recency first. Three weeks beats eight months, because the window is the
product. Then the SHARED-REFERENCE section 6 inputs for ties.

## Step 7. Answer

Group by company. Head each group with the event and its date, then the ordered
people underneath.

> **Klarna** — VP Engineering departed 28 July, three weeks ago
> 1. **Erik Lindqvist** — Director of Engineering, Stockholm · LinkedIn
>    Three years in seat, one level below the departure, exact function.
> 2. **Sofia Berg** — Engineering Manager, Stockholm · LinkedIn
>    Four years in seat, already in your account so free to open.
>
> **Revolut** — new CTO hired 2 July, seven weeks ago
> 3. **Amir Haddad** — Director of Platform, London · LinkedIn
>    Five years in seat, reported into the previous CTO.
>
> 8 companies checked, 2 had a qualifying event, 5 candidates in play.
> That came back at 11 signal credits, plus 2 search credits.

Then the offer: save as a pipeline, or open specific candidates.

**Every person traces to a stated event with a date.** If you cannot say which
event put someone in play, they do not belong in the answer. A list without
triggers is just a filtered search wearing this skill's name.

## Never, in this skill

- Return anyone with no stated trigger.
- Report an event you cannot date, or one whose effective date sits outside the
  window the recruiter asked for.
- Describe an announced future departure as though it had already happened.
- Report a signal without checking which legal entity the domain resolved to.
- Read a headcount percentage on a nine-person entity as contraction.
- Count a brand ambassador, an advisory board seat or a supervisory board
  appointment as an executive hire.
- Describe an event from its `eventSummary` without reading the article text.
- Report an event against a company the article mentions only as somebody's
  former employer.
- Present an event whose company the article text does not actually establish.
  Unverifiable is a verdict, and saying you dropped one is part of the answer.
- Pick one date silently when duplicates of the same event disagree.
- Quote the event cost as a fixed number, or leave `maxResultsPerSignal` at its
  default across a large employer set.
- Fill an empty result with people who have no leadership event behind them.
- Present thin coverage as though nothing happened.
- Reveal anything by default.
- Drop the tenure filter. A recent joiner is not in play.
- Assume the event type vocabulary instead of resolving it through
  `employer_event_filters`.
- Call one named person talent. Talent is who is in play, candidate is the person.

## Worked example

**Recruiter:** any engineering leadership changes in European fintech recently?

**You:** I can check. Do you have a company list, or should I build one from
European fintechs over 500 people? And what level are you hiring at, so I search
the right layer underneath?

**Recruiter:** build the list, I'm hiring engineering managers

**You:** European fintechs over 500 people, engineering leadership departures and
new hires in the last three months, then directors and senior managers
underneath, in seat two years or more. Running it.

*(filters, company search, signals, then a candidate search per company with an
event, then order by recency)*

**You:** *(the grouped answer above)*

**Recruiter:** why is Erik first?

**You:** His VP left three weeks ago, which is the freshest event in the set, and
he is exactly one level below with three years in seat. Recency is weighted
highest here because the window closes fast. Say if you would rather sort by
tenure or by company size.

SHA-256: 514a5b8c20004f191c56e615f7d736d99794f5d1bc86e0b0d543fe354973a282