Pros
The mission is wonderful, and you can tell that everyone truly believes in the mission and isn't just there to have a job. The people are also really nice, and really comfortable to be around. For the most part, its really easy to have a one on one conversation with almost anyone. The benefits are great (tuition waivers, generous vacation time). There are often company outings which are more fun than awkward, and all levels of management seem to come out for these, so you really feel like management wants to be connected to what is going on. After years in this position, and experience in other areas, this definitely has the greatest pros.
Cons
No notice for anything. And everything changes. Constantly. Company objectives change, work objectives change, very difficult to feel like anything is getting accomplished. You are made to feel like your opinion and thoughts matter, but at the end of the day, nothing seems to improve. There are HEAVY amounts of favoritism regarding promotions, and the pay scale tends to be not so great if you don't fall under the list of faves. Often travel is with VERY short notice and with seemingly little reason and poor reimbursement. Some (but not all) managers very much make a point of the fact that they are indeed a notch above you, and one wrong move and you could be gone. Very bad for morale, and productivity. They also claim that we are working hard toward the mission, and that the company values creative solutions, but often data mining and making numbers reigns supreme. Also, extremely(!!!!) unprofessional behavior among managers, as well as between managers and employees has gone unaddressed, again, due to favoratism. No good. I say, good if you can keep your nose to the ground, stay away if youre interested in real change.