Avantages
It's an energetic place, lots of good people, interesting work, interesting challenges. As a programmer, it's got a very interesting problem set to work on, interesting set of requirements to design to, to make a product that is so customizable by our customers, open where we want them to modify it, closed where we don't. They live up to the Agile/SCRUM methodology - a sustainable work pace that doesn't have me killing myself every release or abandoning my family - nor bored. Very cool collaborative type of environment - I'd worked in offices before, and being able to talk to and listen to my coworkers more easily is a nice change. I've been a programmer for 20 years, this is my favorite work environment. I get to get things done, build cool stuff, have a life, work with interesting people. When I hit a trouble point, people here help - I can ask my coworkers or my boss at any moment and get pointed to the right direction.
Inconvénients
If you want an office - it's cubicles. Personally, now that I've done it, I like it (never thought I would - too many negative stereotypes of cubicles). The interaction, the ability to just toss a question to a coworker is well worth it. No walls, so you can easily talk. No food in walking distance - food trucks and a sandwich place that brings food in - that I do miss, I used to work an office with more choices. We've got a free Friday lunch that is often good, and it's something, but I miss walking to my local Chinese or Mexican in the area.