I can forgive even 'regular sites' like Facebook, Outlook or YouTube. but increasingly even coding sites Github/Google Developers also do it. Why is it needed? Most devs I know of want to have menus/etc in English (as it helps searching or reading documentation).
To me it seems easier to display the page in a language matching the accept-language header than to do a geoip lookup and guess what language they want. In some countries they speak multiple languages so it doesn't even make sense to do geoip.
Most of my friends don't speak English so defaulting to English isn't a good solution either.
It would be different if there were a different accept-language set for user intentionally picked english vs default though. But approximately 3 people set the browser language settings ever; and nobody respects them so there's no incentive for anyone else to start, either.
In my experience, this is actually the norm these days.
Google used to insist on redirecting visitors to their local version, which got pretty annoying when traveling sometimes, but I haven't experienced that in a long time now.
The average user might not know so it's easier to default English is not the only language in the world.