Pros
We get a lot of autonomy and ownership. In general, there are very few top down decisions being made, teams have the autonomy to decide how to organise and work while following high level guiding principles. Engineering principles/values haven't changed much over time. The shipping velocity is pretty high, there's a "ship to learn" mentality where features are being rolled out and tweaked over time to better suit customer needs. It's never perfect at first but ensure that we're making progress fast. Most people are quite smart and kind (unlike at some other tech companies I've worked at), there is little politics in R&D but also across the company in general. The recent enough CEO change instilled a lot more focus and a welcomed, renewed sense of urgency although you could argue that the transition could have been a lot smoother. He's been very transparent about everything. It's an environment where ambition / hard work gets you somewhere
Cons
Because we're shipping really fast, not everything's perfect. We do accumulate tech debt and this only gets resolved when a big enough customers complain about quality / a feature gap. When this happens, it requires a reactive effort, it randomizes teams & roadmaps and ends up taking more time to solve than if initially planned. Friction with other orgs does exist, and while company values exist too they are often times interpreted differently cross org. It is sometimes hard to drive change internally as quickly as we do externally, from a product point of view. At times, company/product strategy can appear chaotic and while it makes sense to tack quickly when an opportunity arises, it can be nerve wrecking when it happens more than once a year. Despite all this, I still love it though. No company is perfect