Pros
Great place to work if you are a young, single, male software engineer.
Cons
Not a great place to work if you have a family, are female or have to manage people. Most managers do not have any management training, nor are they given any. There is no recognition given to engineering managers for their ability to help people's careers, performance, or as to how happy their people are with their manager. Almost all emphasis is placed on an engineering manager's technical contribution. Therefore, there is no incentive for managers to treat their employees well, meet with them or help them. Nor is there much incentive for managers to make good business decisions. Most engineering managers only care that they did something technically interesting. Whether it fails or not is not important. Whether it contributes to the company's strategy or business is not important. And certainly, whether their people grow and move forward with their careers is not important.