Pros
- gym onsite - good work life balance (unless your name comes up) - many divisions with lots of real world tech - global company - emerging tech and markets - you tend to work on things that have an impact in the real world on everyday people - stock price has come back up in the last 5 years - self service convenient store located on site - food trucks come by a couple times per week
Cons
- there is literally no way to get promoted from senior software engineer level N to level N+1 - much of the ip is bought from external companies, only the most critical employees from those purchases are kept on staff, and the on staff engineers get stuck making an enterprise grade product - they like to offshore, hire interns, and contractors, and then under pay their software engineers - we are treated like commodities - career opportunities consist of lateral moves between departments or moves from engineering into people management - in the software engineering side, many times there is a rush to ship features, many bugs are shipped, people to do testing are scarce, shortcuts are taken, and hot fixes happen often - no department I've worked with follows an agile process, think more scrum-a-fall