Pros
Amazing place to learn and gain experience - especially for those in junior roles. Great support system; many people are usually willing to help or guide you when you come across roadblocks on a project or even while you're studying for a certification. Fair pay and unlimited PTO. Yeah... that's nice too.
Cons
Sometimes you get put on projects where you're in over your head or overwhelmed because your role for that given project requires things you may not be comfortable with. However, if you are willing to put in the effort to learn, you'll always have support to help you accomplish your tasks. Lastly, this one can be taken either as a pro or con depending on personal preference: While on projects (for about 6-8 weeks) you might be putting in more than 8 hours, depending on skill level and how quickly you learn/adapt. Then when you're "on the bench," there's more of a lax and easy-going work dynamic - where you usually will be encouraged to do an enablement and learn something new and useful, or even pursue a certification that will benefit both you and the company. Some people would like to be on more projects, because it's like a bootcamp worth of experience, while others prefer to get paid to just study - so it's entirely a personal preference and not so much a true "con."