Pros
1. Good place to start your career. You can learn a lot if you are given and grab opportunities. 2. Flexible work culture. 3. Quarterly team outings and sometimes company outings in 2-3 years.
Cons
1. You have to fight to get what you deserve: They will pay you well in terms of hike, stocks, bonus etc. only if they feel you can quit. If you are sitting there quietly doing your work, believe me they are more than happy not to pay any attention to you. 2. People get credit for others hard work here. It all depends who showcases the product to management. 3 .Team is important here: If you contribute something to an important(or hot selling) module, you will instantly get recognized. Comparatively contribution to any non highlighted module will not invite any rewards. 4. People get rewards here for irrational reasons. This has become more of a retention tool. (again point1) 5. Stocks they promise you is a myth for 3-4 years unless you put your papers, which is when it will come into picture.