Pros
Innovative people to work with. Fast paced, open environment. Stock is very strong.
Cons
Very little training for new employees which means many of your colleagues have little understanding of how the business works, so a lot of time is spent redoing things. Not a lot of accountability. There are a lot of effective, hard workers, but you also have a lot of people that can drop the ball and there are no repercussions which is disheartening for those who are picking up the slack. Lack of communication. It's very common to find out about a project after it's already completed and only then is it discovered that requirements were completely overlooked because the relevant groups were not consulted. Lack of career growth. There is very little opportunities to move up in the organization or even laterally. Many teams are running too lean and it's very difficult to convince upper management to add extra headcount for support teams. Lack of direction. Goals are not clearly defined by upper management.