Pros
Foremost, the camaraderie that is developed with co-workers is unique and unforgettable. Second, the product, while superior, is also technically complex and challenging, which means that there is always something new to learn about it.
Cons
Incompetent management team that discourages growth opportunities for employees and has hired many lazy and incompetent engineers (especially in the Quality team). The senior management team that was in place at the time I was on-boarded was a skilled, competent and technically sound team that encouraged new initiatives and continuous improvement and promoted a focus on work/life balance and career opportunities. The current management team is incompetent and discourages any future growth for the product or the people.