These interview practices are probably in part because of the huge number of applicants trying to get into Meta, which allows them to rachet up the difficulty to the highest level.
My assumption based on some interview experience articles[1][2] is that there's an internal arms race between the recruiting and engineering at Meta where candidates are not forwarded for the interview process until they feel sufficiently prepared, often giving them months (in any other company, I feel this would be a big red flag), and interviewers expecting the equivalent of Djikstra or Knuth to join their team, regardless of what the team actually does. (I assume not everyone writes distributed system or database implementations from scratch at Meta.)
My assumption based on some interview experience articles[1][2] is that there's an internal arms race between the recruiting and engineering at Meta where candidates are not forwarded for the interview process until they feel sufficiently prepared, often giving them months (in any other company, I feel this would be a big red flag), and interviewers expecting the equivalent of Djikstra or Knuth to join their team, regardless of what the team actually does. (I assume not everyone writes distributed system or database implementations from scratch at Meta.)
[1] https://medium.com/@rohitverma_87831/my-interview-experience...
[2] https://leetcode.com/discuss/interview-experience/5132569/Me...