Pros: Nice colleagues, set your own pace, project based, doing real work
Cons: None to speak of
I enjoyed my time working as an intern. There is not a ton of structure. Mainly I received an assignment, completed it, received an assignment, etc. It was an really great learning experience though. It's not a fetch coffee type of internship. I had the opportunity to do development on real enterprise-level applications.
Basically, I got to define the duration of my internship, and they didn't really care if I worked less than 40 hours as long as I didn't go over 40 hours. I was able to gain more experience in 3 months than I did in my entire college experience. I would say go for it.