Pros
For the most part, the company develops a software product you can believe in. Customers appreciate it (as long as it works for them), so it's easy to brag about being forerunners in the construction software industry. Also, they do try to have some "team-building" activities including lunch on Fridays, birthday celebrations, etc. Non-management personnel are generally good to work with, probably as a "we're all in this together" mentality.
Cons
Management is largely disorganized and unappreciative all the time. It's easy enough to succeed, but you have to be prepared to guess what you should do and pay consequences if you guess wrong because management is out of touch or gives conflicting instructions. Much easier just to do nothing and wait for them to come to you, which is tedious and will make you feel useless. At that point they also might micromanage you. Other problems include low benefits and lowish salary compared to other companies in that area.