- Excellent infrastructure. If you want to run a job on 2000 machines, write 10 lines of boilerplate, press go, and you're done.
- Lots of people smarter/better-educated/more-talented than me. (Though maybe this is common. :)
- Lots of resources. For a batch job, you can spend 10k machine-hours doing something frivolous without getting approval from anyone, since there's usually enough idle capacity somewhere. For instance, rendering the largest nebulabrot that has ever been rendered. http://www.danvk.org/wp/2007-04-06/nebulabrot/ Or finding the highest possible scoring boggle board. http://www.danvk.org/wp/2009-02-19/sky-high-boggle-scores-wi... This is also great for prototyping something new that requires crunching a lot of data to create. I made a rhyming dictionary that was based entirely on datamining lyrics pages. It's also super convenient that we have a copy of the web on disk to play with.
- Google's brand behind any product you launch. Things might fade into obscurity, but they at least don't start out that way.
Disadvantages of working at Google:
- It's hard to fail fast because everything has to preemptively scale. It's probably easier to scale here than at most other companies, but still much harder than spit+duct-tape on a machine in your apartment.
- Google-wide goals/approvals can eat into the time to focus on product-specific things. There is some big-company overhead, though it's kept to a minimum.
- Established products are somewhat ossified, whether that's due to refinement or over-fitting is up to debate (and debated.) Thankfully though Google is remarkably not risk averse about making major changes to major products if you have the data to back it.
I'm sure that at some point Google will go the way of any large company and become an organization of middle managers shuffling paper around with nothing getting done, the rot hasn't set in yet. There's a big cultural difference to a standard big corp. (No, I don't mean the food or any other shiny baubles).
And while nobody is going to get fabulously rich from Google stock options/grants any more, I have absolutely no complaints about my total compensation.
Google has all of its earnings built into the stock price for more than a decade, so anyone they hire (unless it's a chief muckety-muck) is going to be even-steven in stock. So, Google has to differentiate on culture, salary, and benefits, which they can obviously do.