Pros
As a current employee, I'm pretty tired of the bashing when it's generally unwarranted. Every company has issues, and in the end it's what you make of it and how vocal you are that makes your experience positive or negative. I've worked full-time and as a salaried consultant. Having seen the inner-workings of companies that paid me, or I consulted for, I can say that Lab is top-tier in most every aspect. The pay is competitive to the street, and the health benefits are fantastic for a small company. Your mobile is partly subsidized, and they will expense some training courses and conferences (if you present at the conference, or at Lab with an update of what you've learned). You're working on a different project 2-3 times a year, so there's always a change of pace / outlook, and a constant exposure to new technologies / frameworks. You're working with smart and dedicated people, who want to work with smart and dedicated people, who also want to improve their craft and share with their coworkers. If you're not a full-stack developer, you'll find opportunities to become so, either directly on a project, or on collaborations with your coworkers. If you enjoy technology, you'll find a wealth of knowledge and experience to help you. This place is not to be confused with Facebook or Google, but I've known people who've quit those companies out of frustration, too.
Cons
Some benefits could improve. The business model has changed in recent years, and there have been growing pains. This isn't to say that management hasn't been working to improve the process, they have, and they've solicited comments and thoughts from people on the projects, those on the ground that can provide the best insight.