However, what meaningful questions will cover are advanced architectural problems, particular inner workings of a tool/framework, how to squeeze in the last few drops of optimization etc. Conversation should flow without any major breaks and the most experienced engineers will talk about edge cases of edge cases, thus continuing the conversation themselves. You can discuss different types of architectural patterns, ins and outs of each one and how it can be applied to a particular problem.
You should not waste the engineers time on textbook questions if you value yourself or the interviewee, and as the parent comment stated - the engineer should walk out if they start asking "basic" questions. Someone that worked in the industry for 10-15 years should not be bothered with them.
I've interviewed for developer positions in Pennsylvania, with companies ranging from well-known Fortune 500s to local shops. Not one of them had a whiteboard, asked me to write code, or asked me to develop an algorithm or solve a puzzle.
The interviews were largely the same as those I've heard about for most other jobs: you go over your resume, talk about what you did at past jobs, answer cliche questions like "how do you handle disagreement" or "where do you see yourself in 5 years", talk about the position they're hiring for and their culture, and maybe about compensation.
So maybe it's more accurate to say something like "tech companies (primarily the big ones in Silicon Valley) in the handful of high-tech startup hubs in the world pretty much all conduct interviews this way".
This makes sense if you're still in college and learning but if you're already a professional you should not be studying. If you get asked pointless CS questions in an interview walk out. That is a terrible way of finding good employees. Employers should be asking questions relevant to the position.