Pros
There is a good atmosphere if you are coming from a small company. Free downtown parking, flexible hours, ping pong, arcade games, snacks. Depending on your department you may get the chance of solving some challenging problems.
Cons
You can only get 401k matching after a few years with the company. It's difficult to move up the ladder and harder to move within departments unless you're one of the best or you've been there a few years. The code base has almost no tests so be prepared to spend 90% of your time fixing bugs and 10% building features. The pay is low so experienced developers never stay long. Mid management doesn't have any previous experience managing, so there is a lot of miscommunication. As the new engineer be prepared to get the worst end of the stick unless you are very experienced. Since the IPO there have been numerous budget cuts, also stock was only given to privileged employees, so don't expect a stock program. The morale is low, mostly amongst engineers and support.