Pros
- Despite recently slashes in health insurance benefits, it's still pretty good. No premiums are always good even if the deductible is very high. - 401k match superb and plenty of low-fee funds (read: vanguard) available. - ESPP is amazing, %15 discount with look-back - Depending on the team you're in (read: not division but actual team) you might have relaxed deadlines. Note that this heavily depends on the quality of code that the team has. Teams with crappy code deservedly do a ton of firefighting. - HR si very good about raises. They make an effort to adjust your salary to market (in addition to inflation) without you asking. - Bi-annual bonuses in both cash and stocks (RSUs). - Most people honestly enjoy working here.
Cons
- Lots of layoffs recently, job security is iffy. - Company profitability on a downward trend - Benefits getting slashed recently (new CEO not very employee friendly at the moment) - Again, depending on the team you're in, you could deal with really crappy code that'll make your job soul sucking. There is a ton of legacy code being maintained with no intent to erase technical debt. This is *not* a software company. The policy generally is: if it works, ship it. On a flip side, there are teams with superb code. Quality of code varies drastically by team. - Pay is average. The benefits probably make up for it. - MIddle-management make waaay too much money (in bonuses) compared to doing work. Not to mention, management vs low-level peons seems to be 50/50 split, which is just astonishing, given that they are relatively hands-off the products. - Performance review isn't merit based. If could prove P=NP in your first review, and you'll only get a 3.5/5. On the flip side, you could take a dump on your manager's table on your 6th review and you'll still get a 5/5. Scores are manipulatied to show "improvement" across reviews and do not reflect the amount of work you've done.