Every large old piece of code is "bad engineering" to the next generation that looks at it. That doesn't mean throwing it away
and throwing away all the users and starting over is a rational path forward. The new engineers will just fuck it up in new and exciting ways and won't have all of the experience of the old version built in (and will have to learn those lessons over again, probably).
If you're Google, you already have APIs that serve client applications (there's no such thing as a monolithic Google app, because Google can't launch anything at small enough scale to do a monolith). If your engineers really fucked up the first one so bad you can't fix it and improve it (which I don't believe to be the case, nothing that bad would survive production at Google scale, particularly for a popular product like Hangouts), you just rewrite the damned clients, call it the new (version 2, whatever) Hangouts, and don't confuse your customers (yet again) with a maelstrom of wacky new chat-like products and force them to choose to install and learn something new (again).
But, it seems like a real stretch to say that Google secretly has a bunch of unskilled hacks working there, despite all the evidence to the contrary. And, it's even weirder to suggest that if Google is secretly a den of incompetence that starting over from scratch would be a good idea.
My point is two-pronged: Starting over with a new confusingly named/positioned product is bad business. Throwing away the old, functional, product, to launch a new one that is very similar (how different can a chat really be and still be useful and recognizable?) is bad engineering.