Stream the Latest Episode
Listen and watch now on YouTube, Spotify and Apple. See the episode transcript at the top of this page, and timestamps for the episode at the bottom.
Brought to You By
Statsig — The unified platform for flags, analytics, experiments, and more.
Graphite — The AI developer productivity platform.
Augment Code — AI coding assistant that pro engineering teams love.
—
In This Episode
GitHub recently turned 17 years old—but how did it start, how has it evolved, and what does the future look like as AI changes how developers work?
In this episode of The Pragmatic Engineer, I’m joined by Thomas Dohmke, CEO of GitHub. Thomas has been a GitHub user for 16 years and an employee for 7. We talk about GitHub’s early architecture, its remote-first operating model, and how the company is navigating AI—from Copilot to agents. We also discuss why GitHub hires junior engineers, how the company handled product-market fit early on, and why being a beloved tool can make shipping harder at times.
Other topics we discuss include:
How GitHub’s architecture evolved beyond its original Rails monolith
How GitHub runs as a remote-first company—and why they rarely use email
GitHub’s rigorous approach to security
Why GitHub hires more junior engineers than ever before
How Microsoft acquired GitHub
The launch of Copilot and how it’s reshaping software development
Why GitHub sees AI agents as tools, not a replacement for engineers
And much more!
How GitHub built Copilot
An interesting quote from the episode is how and when GitHub started to build Copilot — during the pandemic, after getting access to GPT-3. And how it all started with a published paper:
Thomas (at 01:07:03): So GPT-3 came out right after the BUILD conference in 2020, which was obviously given the pandemic fully remote. But Kevin Scott and Sam Altman did a session about transformers and large language models. And then, after that, GPT-3 got into the preview, and we got access to that through the OpenAI/Microsoft partnership.
We realized with OpenAI that GPT-3 was able to write decent code in different programming languages and would not mix up the syntax between Python, Ruby, and JavaScript. Then, OpenAI finetuned a model that was called Codex that was specific for these coding scenarios.
In 2020 and August we wrote a paper with three ideas. We had:
Text to code
Code to text as in describing code
Conversational coding which today is known as Chat.
And those two latter scenarios didn't work well enough. But text to code — as in prompting the model within the editor — ultimately turned into auto completion. That worked so well that quickly we saw our internal Hubbers, adopting the tool, giving it really high scores saying "this is great, I want to keep using this."
It was not the typical “management says you have to use it” and you don't want to. In the early days, it wrote about 25% of the code in the fileswhere it was enabled. Shortly thereafter, that number got to about 46% in early 2023. That was the early days of copilot.
In June, 2021, we went into the public preview and within a few months it had gone to one million users. We saw more and more folks on social media saying "well, I was skeptical that this could ever work, but it actually is good enough that I don't want to work without it anymore.”
We go into several more, previously unshared stories on the evolution of GitHub.
The Pragmatic Engineer deepdives relevant for this episode
Timestamps
(00:00) Intro
(02:25) GitHub’s modern tech stack
(08:11) From cloud-first to hybrid: How GitHub handles infrastructure
(13:08) How GitHub’s remote-first culture shapes its operations
(18:00) Former and current internal tools including Haystack
(21:12) GitHub’s approach to security
(24:30) The current size of GitHub, including security and engineering teams
(25:03) GitHub’s intern program, and why they are hiring junior engineers
(28:27) Why AI isn’t a replacement for junior engineers
(34:40) A mini-history of GitHub
(39:10) Why GitHub hit product market fit so quickly
(43:44) The invention of pull requests
(44:50) How GitHub enables offline work
(46:21) How monetization has changed at GitHub since the acquisition
(48:00) 2014 desktop application releases
(52:10) The Microsoft acquisition
(1:01:57) Behind the scenes of GitHub’s quiet period
(1:06:42) The release of Copilot and its impact
(1:14:14) Why GitHub decided to open-source Copilot extensions
(1:20:01) AI agents and the myth of disappearing engineering jobs
(1:26:36) Closing
References
Where to find Thomas Dohmke:
• X: https://x.com/ashtom
• LinkedIn: https://www.linkedin.com/in/ashtom/
• GitHub: https://github.com/ashtom
Mentions during the episode:
• Ruby on Rails: https://rubyonrails.org/
• React: https://react.dev/
• Go: https://go.dev/
• Swift: https://www.swift.org/
• .NET: https://code.visualstudio.com/docs/languages/dotnet
• Chris Wanstrath on LinkedIn: https://www.linkedin.com/in/defunkt/
• PJ Hyett on Instagram: https://www.instagram.com/pjhyett/
• Tom Preston-Werner on LinkedIn: https://www.linkedin.com/in/mojombo/
• Scott Chacon on LinkedIn: https://www.linkedin.com/in/schacon/
• GitButler: https://gitbutler.com/
• Working at Amazon as a software engineer – with Dave Anderson: https://newsletter.pragmaticengineer.com/p/working-at-amazon-as-a-software-engineer
• Azure: https://azure.microsoft.com/
• MYSQL: https://www.mysql.com/
• Acquired | GitHub | Season 2, Episode 9: https://www.acquired.fm/episodes/season-2-episode-9github
• Loom: https://www.loom.com/
• Sentry: https://sentry.io/
• Zendesk: https://www.zendesk.com/
• Atom: https://atom-editor.cc/
• Heroku’s April 2022 Incident Review: https://www.heroku.com/blog/april-2022-incident-review/
• Mike Hanley on LinkedIn: https://www.linkedin.com/in/michaelphanley/
• GitHub Security Lab: https://securitylab.github.com/
• CodeQL: https://codeql.github.com/
• How Linux is built with Greg Kroah-Hartman: https://newsletter.pragmaticengineer.com/p/how-linux-is-built-with-greg-kroah
• Two decades of Git: A conversation with creator Linus Torvalds:
• SourceForge: https://en.wikipedia.org/wiki/SourceForge
• The Octocat: https://github.com/octocat
• Bosch: https://www.bosch.com/
• RailsConf 09: Chris Wanstrath, "How to become a famous Rails Developer, Ruby Rockstar or Code Ninja":
• Mercurial: https://www.mercurial-scm.org/
• About pull requests: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests
• Oh yeah, there’s pull requests now: https://github.blog/news-insights/the-library/oh-yeah-there-s-pull-requests-now/
• VS Code: https://code.visualstudio.com/
• Nat Friedman on X: https://x.com/natfriedman
• Satya Nadella on LinkedIn: https://www.linkedin.com/in/satyanadella/
• 50 Years of Microsoft and Developer Tools with Scott Guthrie: https://newsletter.pragmaticengineer.com/p/50-years-of-microsoft
• Jetbrains: https://www.jetbrains.com/
• JFrog: https://jfrog.com/
• Kevin Scott on LinkedIn: https://www.linkedin.com/in/jkevinscott/
• Codex: https://openai.com/index/introducing-codex/
• Research: quantifying GitHub Copilot’s impact on developer productivity and happiness: https://github.blog/news-insights/research/research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/
• Universe 2023: Copilot transforms GitHub into the AI-powered developer platform: https://github.blog/news-insights/product-news/universe-2023-copilot-transforms-github-into-the-ai-powered-developer-platform/
• Copilot Extensions: https://github.com/copilot-extensions
• Xcode: https://developer.apple.com/xcode/
• Jessica Deen on X: https://x.com/jldeen
—
Production and marketing by Pen Name.
Share this post