Pros
Learning is immense, one can explore his/her strengths and capabilities, products are very good, up to the market requirements, gives ample time to innovate and be creative.
Cons
Work pressure, if one is at on-site, will have to look after each and every thing related to project, be it implementation be it testing, no KRA assigned distribution of responsibilities