Pros
Work is not very difficult and you are given plenty of time to complete it. Even if you fail to meet milestones, the feature will be descoped or postponed anyway. So it is very easy to achieve work/life balance. Hours are flexible and it is possible to work from home. Work is not checked over by managers so you can exaggerate your accomplishments during meetings and take credit for the work of others to build a reputation. Even an individual contributor can average 8 hours of meetings a week, so there are plenty of excuses for falling behind. You don't necessarily need to understand how the product works in order to be a manager, you can just deflect questions to someone else. Managers don't need to be involved in development if there are lack of resources, their only responsibility is to give opinions at meetings. Talented people leave the company, so there is plenty of space to move up. Job is quite secure.
Cons
People who have worked there 10+ years don't necessarily understand the product much more than a new employee. There seems to be a lack of good problem solvers, so those who are competent are burdened with all the debugging and bug fixing. Excessive processes and micromanaging. No autonomy, no ownership of work. Pace of development is quite slow. Code base is outdated and built on deprecated technologies, very difficult to innovate. Lots of restrictions on what software you can install, excessive blocking of internet access. Technical excellence doesn't seem to be valued much.