Pros
Extreme autonomy and support from management to implement new ideas and get things done. Nothing is really off the table entirely when discussing how to solve a problem, and everyone's opinion matters. Lots of focus on professional and personal growth and how to achieve your personal and professional goals. The work is fast paced so things don't ever get boring (I fully recognize this is a "con" for some). There has been a serious and successful push to put the core values of the company on the forefront and really make those drive our decision-making. As the team grows the work-life balance is getting better. Get to wear a lot of software development hats and therefore learn a ton of stuff in the process.
Cons
Lots of work to get done. Startup size means that there isn't always the expertise on the team one would want to have. Currently lacks a 401(k) plan and health insurance could be better but it's not awful. Priority shifts can be very sudden at times.