Pros
the job teaches you a lot of good skills, and your direct co workers are nice to work with usually. the company is laid back for the most part and used to do little nice things for the emplyees, maybe that came back.
Cons
Upper Management runs the company off pure emotion and how they are feeling in the moment you are talking to them so you better hope its a good day. There is no logic or thought put into the choices that are made. It is a purely "does this feel good" approach. The HR department is also very emotionally charged. They do not follow the constitutional laws of innocent until proven guilty. If they don't like you and someone says something bad enough about you or your behavior, you are gone! No investigation, no warning, and you better not being living on site, cause you will have 7 days to find a new place or be kicked out. I watched this happen on multiply occasions to many different employees.