Pros
-You could have met really incredible people in the past. -Good place to work as a graduate, for some time. -Acceptable benefits/really good pay.
Cons
So here is where it starts, huh? I've worked for this company for over 3 years. Made my way through ranks and was promoted from junior role to a team lead/manager (effectively switching from technical guy to business role). It was amazing experience being able to do what I wanted to do so quickly. It wasn't a promotion without a reason too - I was a highly performing employee in every role I performed. Few months after I got promoted (my direct supervisor was at a director level) senior management changed - not only in my opinion for worse. Yearly bonuses are decided for a whole division: so if a sales or devs do poorly everyone is punished for it (and they do poorly every year). We all know that, but when you present that to your employees you don't LAUGH AND JOKE ABOUT IT (during formal meeting too!), but you present a plan how to deal with it and apologize. Changing anything became impossible - even if you present strong, tangible research based on all data available to you you won't be heard and nothing will change. "Do things as it was done before you", "We don't need to change, this is working perfectly". Well, newsflash - it's not. Your employees are running away, your customers are running away, soon there will be nothing to run away from. now that customers are starting to realize that the product you're selling is outdated and there are better AND cheaper alternatives. Devs don't make fixes, just workaround, there are no code repositories and code reviews, product is basically impossible to upgrade (without actually developing it from scratch), version control? does not exist for all projects (some of which are >4 years old) and don't even make me start on monitoring and infrastructure...