Google is a company that builds a lot of tech but derrives most of its revenue from advertising. I actually think that makes it better at tech than pure tech companies. It tends to mean the PHBs who are more concerned with the revenue stream don't get as much in the way of the engineers as in companies where tech is the revenue earning product.
Similarly in the open source world corporate sponsership is very helpful in allowing people to dedicate large chunks of time to things by employing them to work on open source (because its hard to do good work quickly on evenings and weekends) but corporations are usually bad if they try to control the development. That's why projects like the Linux Kernel do so well because corporations pay for hundreds to a few thousand developers but don't get to stick their oar in on technical decisions.
Google does seem to have an issue with maintaining promising apps. Maybe those would actually would do a bit better if the teams those engineers were on actually had to make money. It wouldn't be so much of an issue if they weren't smothering similar apps before deciding they didn't like the ideas so much after all.
Similarly in the open source world corporate sponsership is very helpful in allowing people to dedicate large chunks of time to things by employing them to work on open source (because its hard to do good work quickly on evenings and weekends) but corporations are usually bad if they try to control the development. That's why projects like the Linux Kernel do so well because corporations pay for hundreds to a few thousand developers but don't get to stick their oar in on technical decisions.