Pros
The employees are all very passionate about making great software that helps people do their jobs, and everyone on the team can contribute in their own way and can make a difference without the usual office politics getting in the way. By design they are early adopters of the latest and greatest technology, so you are always getting the opportunity to learn new things. When there are issues, everyone rallies around to figure out the best way to proceed rather than who to blame so they foster an environment where you can truly innovate without worrying if taking a chance will cost me my job. Best of all, employees are treated like professionals and they have a liberal work-at-home policy that allows for a much better work/life balance than I've ever seen before. The company has always been growing fast, so there are always new job opportunities opening up as well as new products to work on. Despite the growth, the executive management team has done a great job managing that growth, communicating their plans regularly to all employees including new hires, and making sure that chaos doesn't ensue and making sure that the entire organization scales so 1 group is not disproportionately burdened by the rapid growth. And they've somehow been able to maintain the casual environment and dress code that everyone appreciates the first day they walk into the office -- which is why they keep winning awards for hiring the best and brightest in the Chicagoland area and being one of the best places to work in Illinois along with being one of the biggest creators of new jobs in Illinois.
Cons
Although fast growth means more opportunities and challenges, not everyone enjoys the pace or the fact that the company dynamics change as you start opening remote offices, so if you're not up to being constantly challenged and stimulated in your job this may not be the best environment