Pros
Engineering's flat hierarchy provides a lot of agency for devs at all seniority levels. The nature of the product—a distributed, scale-out, software defined file system—provides a lot of hard problems. Teams are cohesive and own their work collectively, supporting each of their members through success and failure. Your peers are actively interested in helping you grow with lots of quality feedback.
Cons
Management has a tendency to exercise our agile working style by shifting priorities and then getting upset about the resulting negative impact on teams' productivity. Engineering developed a detailed standardized rubric describing expected skills growth which your peers will evaluate you against but compensation updates feel very disconnected from that rubric and feedback. Cross-org issues don't have a process for improvement and a few specific voices often control the results of cross-org changes.