GitHub’s been through a lot of growth the past five years. Expanding to two million users and almost seven million repositories can push the limits of how we interact with a tool like Git (which wasn’t at all designed to work at scale like this).
This talk is about the systems we’ve built to handle that growth. Starting from a local Git architecture, migrating to a networked backend setup, then optimizing our disk usage with net-shard, and finally I talk about our newest addition, GitRPC, which we haven’t talked publicly about until now.
This talk also covers the human side of things. We’ve gained 100+ employees in two years and we’ve never had anyone quit. That won’t last forever, but I think it’s a good indication of the type of company we’ve built. There are certain things you can do to retain employees, and by worrying about employee happiness you’ll ultimately create a much better product.