Pros
Great supporting culture and opportunities to diversify your portfolio of work. You will get exposure to all types of jobs and pigeon holing people doesn't happen quickly. If you are talented, you will be commended for it. Peer support and team building within the lower levels is very good. You help each other to develop.
Cons
We're all generalists. Especially in consulting, the teams are fairly small and leadership is quite opportunistic instead of strategic. This means that yes, you will get diverse work, but no you cannot always govern your own destiny and have intellectually challenging work that stretches you and helps you in developing yourself. There is a danger that people get branded for one bad performance, which sticks with them throughout their career, which makes it hard to climb the ladder and get a fair shot at new opportunities. Favouritism is definitely present in staffing and this taints the leadership team quite heavily, which as a consequence, disengages staff.