Pros
Vacation is unlimited, but recently some teams started to mandate management approvals to get it, previously you would submit the request ahead of time and all set to go. Company matches 6% of your 401K contributions vested immediately.
Cons
The culture of indifference at many levels - most managers do not see you as a person, but rather as a replaceable resource, Most products are legacy ones with a lot of questionable code, a lot of time you will patch issues instead of developing a new code base. Many managers are grown from within and are skilled developers without soft skills to manage people, many old-guard people managers just care about their own growth and will throw you under a bus to step up. Engineering culture is very strange - managers cultivate backstabbing by requesting a regular anonymous feedback on other employees in 1-1's. You will be shuffled between projects on a quarterly basis instead of focusing on a specific area and deep dive into it.