Pros
* Good benefits * Fun extracurricular activities * Coworkers were mostly nice
Cons
* As a developer you don't really have a manager. Your "manager" will work on a different team and have a "real" job that doesn't involve managing people. As a result your manager won't really know you or your abilities or your day-to-day. * Seems to be oriented completely towards millenials who don't like to be told they're wrong, hence the "hands-off" management style. * May be fired without warning like I was. The reason given was that I hadn't checked in enough code over the past few weeks. When I pointed out that most of my code during that period was pair-programming, the guy firing me didn't care and said he expected "more" from his senior engineers. I was never given a warning or told I wasn't doing well, and I've never been fired from a development job for lack of performance during my entire 20+ year career. In fact I've generally been given large bonuses and even stock grants because I tend to excel at my job. * Focus on agile development to the detriment of actually getting stuff done. Every task I was assigned was a minor bug fix or feature that took 1 day or less to complete.