So I'm guessing, it's not for the everyday stuff that google thinks you need to know how to invert binary trees etc, it's for that one time when you'll really need to do it.
... of course, at that point you can just look up the solution, but I guess they want to make sure you can understand it.
I've inherited enough of these (deeply nested code hairballs that can be replaced by a comparatively miniscule set of tree traversals or something) to change my view from "algo is just programmer status signalling" to "algo is a core competency that matters."
I suspect we would be better off if we used total domain specific languages for the majority of the work (data transformations) and TC languages only sparsely, where we cannot avoid recursion.
This is somewhat what you do when you write SQL, but SQL is an OLD language and it doesn't compose well with other things.
This approach is exemplified by for example Facebook's Haxl, which is a functional domain specific language for filtering content. So you write the domain code in a specific language, which is easily transformed/compiled.
(Actually your TC and your DS language don't need to be different syntactically, they can be both based on a common functional language.)
Interestingly, the interviews are very much based on TC language notions.
Even the coolest idea requires scaffolding. The larger/more novel the idea, the more (re)scaffolding needed.
I would hate to get employed at Google and then work on Google+ for ten years. Seriously? No one cares about Google+. You're a slave at Google, they are literally doing statistical experiments with your time.
It is known, people turn down Google offers all the time to remain independent. Working for a big company doesn't give you a lot of freedom, unfortunately.