Pros
1) Questions are welcomed and people will do their best to answer them 2) Many people from all around the org chart are willing to take time out to talk to you if you need time with them 3) The benefits are very good, good dental, health, some 401k matching, life insurance 4) Everyone seems to be very happy and invested in their positions 5) They embrace agile in coding 6) A real sense of care is given by the company 7) quarterly bonuses have had no problems with my manager, any other manager, have been able to talk to and get to know the CEO a little bit here and there. I'm a recent hire in an entry-level position and Iove it. Swapping to other positions seems very possible and everyone seems to be supportive of it. Lots of nice little things like keurig coffee and tea, a wonderful coffee machine, and fruit in the break rooms. If you are coming out of college, consider applying, they have a great program getting you acclimated. They expect work out of you but if you give it to them, they'll reward you in kind.
Cons
Not too many cons to be honest. depending on the person it might be a con that its a very fast moving company so solid performance is expected and a good amount of work will be required. Some people might find the emphasis on the company's philosophy a little overwhelming but I have no problem with it.