Vantaggi
Will speak about my experience as a software engineer only, but I think the same applies to other teams. Innovative workplace, well known among industry professional, on the edge of transforming from startup into an IPO company. Lots of interesting work to do, and a real opportunity to affect product development direction for all engineers. Multi-national, vibrant development team, company has offices all around the world. Management all have engineering background as far as I can tell, so they are involved in development itself. Working environment (at Fremont office at least) is very comfortable, company does everything to make your stay at the office as comfortable as possible so you wouldn't want to go home.
Svantaggi
Software development processes are not very well established. Company coming out of its start-up phase, and a lot of practices which were OK for a smaller development team do not suit a growing company. Sometimes job requires to spent a lot of time working, in the office or elsewhere. These periods can be short for someone to whom spending a lot of time at work is very inconvenient (needs more time with kids or whatever), but these periods can not be avoided altogether. So plan accordingly.