Having worked in a company that was more of a PR exercise than something intended to actually generate revenue, it's an interesting mix. You get the time to engineer everything really well, you're encouraged to use the latest technology, go to conferences, and improve your own skills. At its best, it's the same kind of "blue-sky engineering" that you hear about people having done at Xerox Parc or Bell Labs. But without that bit of pressure to actually deliver something, it's very easy to get lost in overengineered architecture, and if someone high up makes a bad design decision it's very hard for the consequences to be brought to bear in a way that matters.