Pros
My managers were not restrictive when working on new cloud solutions. And I had access to all the tools I needed. Thanks to the trust and encouragement of my team, I was able to rapidly improve my skills as a software engineer.
Cons
Upper management is too distant from the customer and technology. New product features will take precedence over everything, regardless of the business value(if any) or other high-priority items put on hold. If you constantly roll out new features(garbage or not), you will most likely get promoted. I also understand that money is what business is all about. And sometimes, the company has no choice but to have layoffs if it helps protect the business. But when the business lays off the same departments in a short period, is management doing their job and making smart business decisions or learning from previous mistakes? To make things worst, management has gotten rid of highly performant employees when the business needs to run lean, how is this supposed to provide the business with more bang for its buck? Once again, they are too distant from the business(customer/staff) to make any smart decisions. sample prioritization: new button styling > increasing page performance or buggy features