Vantaggi
Square's a great place to get your career started as a software engineer. There's a pretty high standard of code quality, good test coverage, great knowledge sharing (lots of pair programming), and it's still pretty easy to get your ideas on the table and find yourself in a position to build them out. The office is gorgeous, there are tons of perks (massage therapists & chiropractors onsite, coffee bar with baristas, cafeteria with a pizza oven for breakfast/lunch/dinner, etc), and the people are all super friendly & great to work with. The thing that really sets Square apart from others is that it both has soul as a company, and a viable business model. It's easy to see your work out in the real world, and feels validating to talk with people using the actual product.
Svantaggi
We seem to go through an inordinate amount of re-orgs, though perhaps that's normal for a company that's growing as rapidly as Square has over the last few years. With the fast growth, it's easy to slip between the cracks, so you have to keep on your toes to move with the company.