I think what the page meant by saying "when, where, who" is that the perfect form doesn't go well with expressions suggests a particular time. The example sentences given at the linked page seem to be all about it.
The default past tense is the simple past, as Michael Swan says in his Practical English Usage (§421.4 "In general, the simple past tense is the ‘normal’ one for talking about the past; we use it if we do not have a special reason for using one of the other tenses.")
The perfect forms are needed basically to add the sense of completion to non-finite verbs such as infinitives, participles, and modal verbs. Because such tool exists, it's also used to talk about past events, but it ends up saying 'up until now' ('up until sometime ago' when it's the past perfect). Because it's tenseless by itself, it makes the sense of time vague, thus it has the sense of duration at the same time it conveys the sense of completion.
The use of the perfect forms are more to do with meaning than tense. Grammar books usually says it's one of tense form, but actually it's not about tense. Linguists call it 'aspect'.
The perfect form goes well with expressions like already, recently, just, since, ever, never. But it doesn't go well with expressions of particular point of time, when, such as yesterday.
I've read something more relevant to the OP's question, in the same M. Swan's PEU:
§457.1 (...) we usually prefer a past tense when we identify the person, thing or circumstances responsible for a present situation (because we are thinking about the past cause, not the present result). Compare:
Look what John's given me! (thinking about the gift)
Who gave you that? (thinking about the past action of giving)
Also
PEU §456.5
We normally use the present perfect to announce news. But when we give more details, we usually change to a past tense.
There has been a plane crash near Bristol. Witnesses say that there was an explosion as the aircraft was taking off, ...
Your simple past understanding is fine. In your example the present perfect and the present perfect continuous are practically interchangeable. In both cases, David is still working for them. With 'how long' questions it is often the case that the two are interchangeable.
Sometimes there is a slight difference between the meaning of the present perfect simple and present perfect continuous. They both have an effect that is valid in the present, but sometimes in the present perfect the action is complete while in the present perfect continuous it doesn't have to be.
A typical grammar book example is 'I have painted the ceiling' versus 'I have been painting the ceiling'.
In the first example, the effect is that I am happy now, in the present; the job is done.
In the second, the emphasis is on the process, the action. We do not know if the job is finished, just that the speaker was recently involved in painting the ceiling.
PS I should add that this is British English.
Best Answer
The present perfect is used to speak about the current state. You can't use the present perfect with a time expression that excludes the present.
The adverb "then" is giving the time when an event happened. If you are speaking about a past time, you must use a past tense: