Most of the seniors I interviewed were acing questions like this (they probably answered them tens of times before), and there's no way to differentiate them, once you get perfect answers. As the author of blog post mentioned, some of them don't even listen the question till the end before reciting manual phrases about Single Responsibility.
Some people would disagree but for us there are a few factors that predict if the candidate would be a good fit:
* The ability to solve easy and medium leetcode-like challenges and explain his choices. Nothing fancy, no dynamic programming or graph theory. This tells us if the candidate knows how to write code, which in most cases is at least 50% of the job.
* His academical record. It's a good predictor, because people who actually did good in school and finished their homeworks have a good work ethic. Of course, we are not recruiting PHDs to do backend work, but people who did decently well in school are usually nice to work with. There are brilliant dropouts, of course, but they are not the norm.
* We test how opiniated the candidate is when it comes to technology by asking outrageous questions (relative to the Status Quo): Why dependency injection is bad. We like people with opinions, but we find difficult to work with "evangelists".
The rest is commentary (at least in our case).
What about Fermi estimation problems? The internet seems to have turned on them in recent years, but they are a good test of intuition and general problem solving skills.
(And yes, my comments history has me extensively promote XMPP, no big secret here.)