John will already have beaten when his friend arrives.
Future Perfect Tense
We use the future perfect simple (will/won't have + past participle) to talk about something that will be completed before a specific time in the future.
The students are coming at 8 a.m. I'll have opened school by then.
On 9 October we'll have been married for 20 years.
Will they have arrived to village when you get back?
We can use phrases like by or by the time (meaning 'at some point before') and in or in a day's time / in two months' time / in five years' time etc. (meaning 'at the end of this period') to give the time period in which the action will be completed.
We won't have written all the reports by next month.
By the time I arrive, the kids will have gone to bed.
You'll have finished in a day and then you can watch a film.
In two years' time, She'll have graduated from university.
