1) Streamlined development culture across the company.2) Very supportive team mates who helped constantly raise the bar by asking the right questions and putting the foot down at the right time.3) Lot of opportunities to learn by way of tech talks and stuff.4) Open policy for interns to move to teams of their choice.5) Strictly enforced code review process6) Good pay

Cons

Some of the minor downsides:

1) It takes a ton of meetings to reach consensus on something. Sometimes, with a lot of digression and emphasis on minor details.2) No freebies