Pros
1. The team I was part of offered great learning opportunities. It's a place where you never have a day where you don't learn something. 2. Management is very supportive of their employees. 3. Awards for people that perform and produce outstandingly 4. Free, freshly brewed coffee. Free lunch on Wednesday, free bagels on Friday, and free beer after 5pm (where drinking is part of the culture) 5. Open environment . . . no cubicles. Not bad, if you are into rubbing elbows with your neighbor (literally) 6. Supportive team environment. Everybody works hard attempting to produce a quality product
Cons
1. No training. Learn a complex product on the fly. There is no learning path. There is no guidance by management. It would have been beneficial to me to have someone that actually was a mentor, not the "silent" one who I had to prod to get answers from the first couple of months I was there. I was also put in charge of evaluating this person, who had quite a bit of knowledge, but was put in a vise in order to get the product out quickly, resulting in multiple unfound bugs. 2. Open environment . . . no cubicles 3. Noisy environment . . . co-workers were leaving the building to find a quiet place to work and concentrate 4. Management wall - no longer a flat communications model 5. Hair on fire releases, probably because deliveries run behind schedule frequently. One client delivery was 11 months behind 6. Psuedo agile environment - some teams have daily standups. I attended one retrospective where a manager volunteered to take notes. A white board was in the room, but it wasn't used. Mentioned weighing tasks as a team, and was quickly brushed off, being told that product/project management had already discussed it (without QA). 7. Minimal use of JIRA board 8. Pull back on boasting about large projects with short time cycles. Boasting should occur when you have a bug free release and releases are on time, even with large customers 9. Tendency to focus on the younger crowd