Pros
Learned many valuable skills, technical and personal, because you get the opportunity to be directly involved in all levels of a very fast-paced, growing company. You never feel bored or like your work doesn't have an impact. You get to wear many different hats so your role doesn't have to be what it was when you first started. Depending on what you're good at, if you show it, it will get recognized. There's really great people here and if you immerse yourself the work is fun! The office environments are really relaxed with a lot of perks and the annual retreat is a blast. Don't let the negative posts below deter you, most of them left on a bad note. There are some valid points for improvement but definitely not to that extreme.
Cons
You will be challenged. You have to be willing to put in 110%. If you're a coast along kind of person, it might not be a good fit because it's a small company that's still building a solid foundation and trying to get its culture right. You get to help build it so you need to be a self starter who can thrive when issues arise. There's also communication breakdowns because the company's spread apart in 4 cities. Be prepared to adapt to different management styles if you're coming in at a lower level. If you're coming in at a higher level, pick your poison and that may very well be the new standard.