Actually the core of XMPP is fairly small - an XMPP server need not implement every extension ever conceived of. Given that it's widely deployed, solves the presence and federation, and is implemented in a wide variety of languages, I think the GP is right.
The only real nit that I see is with mobile devices - XMPP isn't great for low power low bandwidth situations.
Google keep the chat client open but have an option to hold back all but the most important packets on the server side and then batch send them after a set period of time. This is something along the lines of http://xmpp.org/extensions/xep-0273.html
The current nokia version of buddycloud (http://mobile.buddycloud.com) will run continuously for for about 18 hours. The android version with batch sending of packets even longer.
And if you worry about XMPP's verbosity, just add the DEFLATE option to your TLS socket. That drops the size down to about 10% of the original.
The only real nit that I see is with mobile devices - XMPP isn't great for low power low bandwidth situations.