Pros
-flexible work hours
-decent compensation
-chance to do some interesting work
Cons
-extreme pressure to be billable even though sometimes you have no control over it
-lack of mentorship / leadership / development opportunities
-depending on the market you can be stuck doing the same thing over and over again
-more often than not you will just be a glorified process engineer
-horrible benefits
-minimal holidays (i.e., thanksgiving you only get Thursday off and you have to work extra hours prior week to get Friday off)