Pros
Great engineering teams, and opportunity to take on increased responsbilities. Challenging and cutting-edge work, and senior technical staff is usually approachable. Managers usually encourage a good work-life balance, with flexible hours and/or working from home as needed. Compensation is excellent in good times, which unfortunately are few and far between.
Cons
No bonuses or raises in the last couple of years, and several other benefits have been cut. Basic compensation is probably competitive, but with an unstable job and non-performing stock and options, the overall benefit package is really uncompetitive. Also, there isn't enough career training or professional mentoring, and technical staff are not trained to be good managers. As a result, there is a lack of internal management talent. Also, several layoffs and poor product planning in the last couple of years have led to low employee morale.