Pros
firing is almost unheard of- you will be trained and retrained to find a fit for your abilities. incentives are there, however leaps and bounds under market value. founders are there to listen (mostly), ability to move laterally and plenty of opportunity to do so. working in office is a great positive atmosphere with plenty of opportunity to meet diverse set of peoples
Cons
no ability to move up, managers are chosen based on seniority, nepotism is rampant within families (YES families and friends get hired and chosen over those with ability), team leads micromanage and treat horribly those who question authority (and experience no repercussions). Pay is tens of thousands below industry standard, there is little to no company wide SET standards or protocol as each team is its own microcosm. resources are ALWAYS tight, developers and techs are loaded with work to where they must be begged bribed or threatened to get anything done. There is no accountability within the team lead group nor the dev/ programmer teams. promises are always made and broken. company culture, while diverse and offers opportunity for everyone, favors indians over anyone else- and most in that group purport to be blind to this. To add insult to injury, you will RARELY be rewarded or recognized for hard work- rather, handing out negative criticisms and feedback is the way to go...