Pros
For the software we used a lot of new technologies and weren't afraid to try new things. Something that worked and sometimes it didn't but that was good.
I did learn a lot about new technologies I haven't used before. Some examples: Redis, Gulp, Browser Stack, Bower, npm, React, Flux, Pattern Lab, SASS, and some other things.
The pay was pretty good.
Cons
Things were great for a while but management made some really weird planning choices. Looking back on it I think they were trying to slow down the project and run up the bill to the client.
You have to remember we were contractors so the more time and people we put on a project the more we billed the client.
1. No clear specs.
2. Last 6 months I was there the project we were given never had specs or a deadline.
3. They wouldn't let us refactor simple things to save time. We keep fixing the same broken code that was in half a dozen places.
4. Towards the end a lot of developers and management were afraid to learn new things. Even simple things where the technology wasn't much different.
5. In my opinion they didn't want to use technologies and code that would shorten our workload too much.
6. In the beginning of 2016 the client cut the work order and management was never honest about it.
7. The projects took way too long and had too many people on it.
The client did approve all of this though. I pushed back a bit on trying to make things more efficient. Less time on repetitive work, automating things, and so on. I even spent my own personal time on things. None of that was appreciated. In the end it just got me in trouble.
So I am a little bitter but that's the way I see everything.