Pros
GitHub is full of extremely talented, sharp, and generally emotionally intelligent people who work on a product that people love and is nearly essential to any software developer. They work in an environment that is very remote-friendly as well as accommodating to SF-based employees, with a boatload of exceptional perks and thoughtfulness toward a solid work-life balance. Plus, when you leave - either by your own decision or through their now well-known layoff cycles - you'll have a brand name worth its weight in gold on your resume.
Cons
No matter how good of an environment GitHub creates, nobody actually does their best work there. This is due to a culture that rewards politics and favoritism over merit and cultural contributions to the organization. There's a reason why GitHub alumni do great things once they leave the company. GitHubbers are becoming CEOs, Heads of Product, and leaders at other successful companies - it's surprising that GitHub simply considered them expendable. In addition, GitHub does not seem to understand how to reward and retain good employees, and it makes dubious decisions on staffing. You could be producing exceptional work one day but find yourself on a Performance Improvement Plan - or, even worse, shown the door and locked out of your accounts - the next. All of this boils down to an executive and management team that wildly varies in its ability to lead. Some have years of solid experience with just a few areas of growth needed; others are completely in over their heads and are given no true compass to follow, causing their departments to suffer. And since GitHub hasn't invested in a solid leadership development or career growth program - something it should have at 10 years of age and 700+ employees - it's not a place that I would advise anyone go to in order to take a positive step in their career.