Pros
Worked in a smaller office with great deal of flexibility. Had a good manager, and thus got exciting projects to work on. Some of the people there were brilliant and thus it is easy to suck in lots of knowledge. The hours were not long, and the area the office is situated is fairly nice. There was a casual attitude to most things. Followed an Agile method of building software, which was nice in that one could hear about the progress of other projects. I was given work right away when I started, and there was little siting around time.
Cons
In the end there was a lot of overhead to get access to do certain things. Senior management often did not promote the best people, and did not make the best decisions. It was very cumbersome to use a different platform than was already in existence. The level of knowledge of the people was very high, it just seemed that management did not utilize their skills to the highest degree. In addition the perks were not that great as they would be in a financial company or a start up company. There was little socialization outside of the work place.