After 3 years I still feel like I'm surrounded by people smarter than me. The job is stressful at times, but so worth it
Pros
* Free food * Fun people * "Don't ask for permission, just go do it" culture * The code I write goes in to production in a matter of days * A vast distribution of incredibly interesting problems to work on (often hard to choose from) * Management knows they can't really shove anything on to anyone. If they want to see something get done a different way, it's up to them to persuade not to force (I've worked in 3 completely different groups in the company and this was a consistent theme)
Cons
* Each engineer has tons of responsibility. This can honestly be stressful sometimes as you're on point for keeping it all running * I live in the city and, while the commuter shuttles (with wifi) make commuting about as bearable as it possibly can be, it's still less than ideal to have about an hour between work and home.