Pros
As an engineer there are a vast amount of interesting problems and projects to solve for learning opportunities. Many fun and innovative developers that are willing to help, teach, and build with. There’s a strong emphasis on culture and investment in training.
Cons
They give poor raises that don’t even track with cost of living no matter how highly you perform. There’s a wall of arbitrary red tape for promoting with years of performing at the step up level before promotion consideration. They’d rather hire seniors than promote into the roles. Overall a very stressful job with little support for disorganized product vision. The onus for everything is on developers to fix process failures up the chain. Expect to work overtime every week but also be told it’s because you can’t manage your time properly. There’s no 401k matching for 3 years and PTO/vacation is poor if you think you can even take any and still deliver.