Pros
If you get lucky to get put on a high visibility project that has a big impact, you get a lot of recognition. Foosball tables, ping pong, and free snacks in Plano offices. A lot of the developers are really smart, and everyone that I know is happy to help explain things you might not understand. Work life balance depends largely on team. One of my team’s had high performing individuals that would come in at or before 9 and stay later than 5 on most days. My current team does 8am - 4pm. Compensation (for college recruits at least) is very good
Cons
With the new “experience model” team system, Agile has turned into some type of pseudo mix of waterfall and agile. Business tries to dictate deadlines. I know developers who work really hard (harder than me) and stay longer than me, but don’t get the proper recognition because either their managers aren’t good at giving it to them, or because the project they are on doesn’t get much visibility from higher ups. This impacts performance ratings/promotions. Teams that work on legacy tech/modernizing legacy tech don’t get much recognition.