VP of Product at GitHub
Ryan J. Salva is VP of Product at GitHub and led product for GitHub Copilot, which went from a research prototype to general availability in about a year and a half. The most useful thing to learn from him is how to protect a moonshot team, hand it to a product team only once customers confirm the problem, and keep a human in charge of the AI.
We don't want it to replace anything. We want it to augment.
The role of AI in new product development | Ryan J. Salva (VP of Product at GitHub)
Salva came to software through creativity, not computer science. He studied philosophy and English, and sees software as a new creative medium. He has worked in engineering for over 20 years, including startups (some his own), about 10 years at Microsoft and 3 at GitHub.
His studies were about how people communicate and express experience, from cave paintings to songs. Software did not exist as a medium 50 or 60 years ago.
At Microsoft he ran the shared developer infrastructure behind Windows, Office and Azure. He led product for One Engineering System, the shared developer infrastructure for Windows, Office and Azure, plus Azure DevOps.
After the acquisition he moved to GitHub to reach the developer community beyond what Microsoft could reach alone. Nearly every developer touches a GitHub repo in a typical year.
He ran GitHub's infrastructure team when OpenAI's cloning looked like an attack. The clone traffic looked like a denial-of-service attack until it was traced to OpenAI. GitHub stopped the load quickly with no uptime incident.
GitHub then offered the data in a more responsible, packaged form. That snapshot of public code became Copilot's training data.
Copilot bet that code is a language models can learn. A model that translates between human languages can also translate English into Python or Python into C#. Programming languages have far fewer semantic words than English, so they suit AI well.
Copilot runs on Codex, a derivative of GPT-3, and infers intent from variable names, class names, method names and comments around the cursor.
The team chose inline gray text over a side panel to protect flow. A right-click side panel offered whole functions but pulled attention away from the cursor. They landed on multi-line inline autocomplete in gray italic text, which signals the suggestion is ephemeral.
VS Code had no extensibility for multi-line autocomplete, so the two teams designed it together. The work took about a year and a half.
Salva tuned latency to about 200 milliseconds. The team ran experiments on how long a suggestion could take before a developer felt interrupted. A wait of 1 to 3 seconds breaks flow, and the sweet spot was around 200 milliseconds.
Latency varies by location.
Prompt crafting turned a raw model into a usable product. Beyond the model, the team tested which parameters to adjust and what to optimize for. How you prompt the model to return a useful response mattered as much.
Salva credits researcher Oege de Moor as the true innovator behind Copilot and says he deserves credit for the initial work. The name is transcribed as Hugo de Moor in the source.
Salva keeps moonshots in a separate team with no revenue expectations. GitHub Next works on horizon two and three ideas, apart from the engineering, product and design teams that ship and operate products. It has no early demands for revenue, security, privacy, uptime or accessibility.
Copilot came out of this team. His advice: "Don't expect any anything out of them that is going to turn into a money maker."
He defines horizons by confidence, not by the calendar. Horizon one is roughly the next year, horizon two three years and horizon three five. They measure ambiguity and confidence, and decide whether work goes to a moonshot team or a product team.
The dates are only a rough guide.
He waits for customer signal before moving a prototype to product. The trigger is a representative set of customers with a genuine problem and at least medium confidence that the idea solves it in a novel way. Prototypes then go in front of more and more customers, informally.
For Copilot the signal was developers saying it did something they could not do alone. Salva's role grew at that point. Before it he only monitored and consulted.
Preview buzz told him when to scale the team. The technical preview grew from tens of thousands of invitees to hundreds of thousands. Excited tweets and Hacker News threads signalled it was time to hire.
The hiring was meant to let researchers return to GitHub Next.
Researchers go back to R&D only when a trained replacement is in the seat. Researchers moved temporarily into a new product squad for knowledge transfer. They returned to GitHub Next after general availability and after multiple squads had been hired.
Salva says the handoff "can't be based on a calendar." The first researchers probably lack all the skills for the transition, so he did not expect them to cover it alone.
The product team must own the roadmap, not R&D. The team that maintains the product and has the closest customer feedback loop controls the roadmap. Engineering fundamentals become contracts with the people who depend on the service.
These feel unnatural to researchers, so Salva mixes service-minded engineers with researchers who carry the original vision and manages the shift as cultural change. His line: "you can't really delegate roadmap to an R&D team."
Large teams should reserve 5% to 10% for bold bets. Salva runs his larger teams at GitHub on roughly 5% to 10% bold bets, about 60% incremental work and 25% to 30% operations.
Operations keeps in-market products meeting customer expectations. Incremental work realizes the payoff of bets made one to four years earlier. He calls it a general principle, not a fixed rule.
A startup's split looks very different. A startup is all in on one bet, the proverbial lottery ticket. With no in-market products to run, the operations and incremental buckets barely exist.
Salva hires by asking candidates to teach something in one minute. He times it on his phone and grades completeness, complexity and clarity. Clarity means he actually learned something by the end.
The best answer covered 18th century art and its link to religious trends, from a Vanderbilt candidate he rated an "extremely strong yes hire".
Salva framed Copilot as an AI pair programmer to set behavior rules. A pair programmer who whispers politics or slander in your ear is too distracting to work with. That test set the principles for what the bot beside you may say.
He spent more time with legal on this product than on any other he has led.
GitHub replaced a crude word blocklist with AI models. Copilot launched with no filter, then a simple blocklist, then models from the Azure Department of Responsible AI that detect offensive content in context. Blocked words sometimes offended developers or cost them value.
Salva says "these blocklists are always fraught with peril." Context matters: a word that is offensive in one setting can be reasonable in medical software.
He keeps a human in charge and welcomes skepticism. The community doubts whether training on public code is acceptable and whether suggestions are secure or buggy. Salva wants people skeptical and keeps static analysis and unit tests in place.
He wants a human making reasoned decisions at the keyboard.
Trust work meant growing the product team faster than engineering. Constant give and take with developers required scaling product roles more than engineering roles. Good product managers spend as much time as possible with customers.
Scarce GPUs set a hard limit on growth. Training and running the models needs rare GPUs with little global supply. GitHub earmarked capacity and puts new chips into data centers as soon as they are produced.
Salva says "we are greedy greedy greedy for more capacity globally."
Suggestion quality tracks how much public code exists for a language. Copilot writes roughly 40% of code for Python developers, and the share ranges from the upper 20s to the 40s across languages. It shows up in lines written or acceptance rate.
Volume and diversity of training data correlate with quality.
Salva sees Copilot removing remembering so developers can create. Parameter order, syntax and dummy data are labor, not creating. Copilot brings documentation into the editor and replaces trips to tutorials and Stack Overflow.
His summary: "It's not creating, it's just typing." Developers find themselves a little addicted to it.
He expects AI to spread across the whole development stack. Salva sees developers moving toward design patterns and end-user outcomes while AI scaffolds the rest. In 5 to 10 years, more people could become developers while experienced ones tackle larger problems.
He names build queue management as another candidate for AI. Copilot is also used in education, where students build real tools with it at their side.
Ryan Salva explains how GitHub Copilot went from a research prototype built on a snapshot of public code to a general-availability product in about a year and a half. He covers how to run a moonshot team inside a large company, hand it to a product team, and handle the ethics and scaling problems of an AI product.
Salva came to software through creativity, not computer science. He studied philosophy and English, and sees software as a new creative medium. He has worked in engineering for over 20 years, including startups (some his own), about 10 years at Microsoft and 3 at GitHub.
His studies were about how people communicate and express experience, from cave paintings to songs. Software did not exist as a medium 50 or 60 years ago.
At Microsoft he ran the shared developer infrastructure behind Windows, Office and Azure. He led product for One Engineering System, the shared developer infrastructure for Windows, Office and Azure, plus Azure DevOps.
After the acquisition he moved to GitHub to reach the developer community beyond what Microsoft could reach alone. Nearly every developer touches a GitHub repo in a typical year.
He ran GitHub's infrastructure team when OpenAI's cloning looked like an attack. The clone traffic looked like a denial-of-service attack until it was traced to OpenAI. GitHub stopped the load quickly with no uptime incident.
GitHub then offered the data in a more responsible, packaged form. That snapshot of public code became Copilot's training data.
Copilot bet that code is a language models can learn. A model that translates between human languages can also translate English into Python or Python into C#. Programming languages have far fewer semantic words than English, so they suit AI well.
Copilot runs on Codex, a derivative of GPT-3, and infers intent from variable names, class names, method names and comments around the cursor.
The team chose inline gray text over a side panel to protect flow. A right-click side panel offered whole functions but pulled attention away from the cursor. They landed on multi-line inline autocomplete in gray italic text, which signals the suggestion is ephemeral.
VS Code had no extensibility for multi-line autocomplete, so the two teams designed it together. The work took about a year and a half.
Salva tuned latency to about 200 milliseconds. The team ran experiments on how long a suggestion could take before a developer felt interrupted. A wait of 1 to 3 seconds breaks flow, and the sweet spot was around 200 milliseconds.
Latency varies by location.
Prompt crafting turned a raw model into a usable product. Beyond the model, the team tested which parameters to adjust and what to optimize for. How you prompt the model to return a useful response mattered as much.
Salva credits researcher Oege de Moor as the true innovator behind Copilot and says he deserves credit for the initial work. The name is transcribed as Hugo de Moor in the source.
Salva keeps moonshots in a separate team with no revenue expectations. GitHub Next works on horizon two and three ideas, apart from the engineering, product and design teams that ship and operate products. It has no early demands for revenue, security, privacy, uptime or accessibility.
Copilot came out of this team. His advice: "Don't expect any anything out of them that is going to turn into a money maker."
He defines horizons by confidence, not by the calendar. Horizon one is roughly the next year, horizon two three years and horizon three five. They measure ambiguity and confidence, and decide whether work goes to a moonshot team or a product team.
The dates are only a rough guide.
He waits for customer signal before moving a prototype to product. The trigger is a representative set of customers with a genuine problem and at least medium confidence that the idea solves it in a novel way. Prototypes then go in front of more and more customers, informally.
For Copilot the signal was developers saying it did something they could not do alone. Salva's role grew at that point. Before it he only monitored and consulted.
Preview buzz told him when to scale the team. The technical preview grew from tens of thousands of invitees to hundreds of thousands. Excited tweets and Hacker News threads signalled it was time to hire.
The hiring was meant to let researchers return to GitHub Next.
Researchers go back to R&D only when a trained replacement is in the seat. Researchers moved temporarily into a new product squad for knowledge transfer. They returned to GitHub Next after general availability and after multiple squads had been hired.
Salva says the handoff "can't be based on a calendar." The first researchers probably lack all the skills for the transition, so he did not expect them to cover it alone.
The product team must own the roadmap, not R&D. The team that maintains the product and has the closest customer feedback loop controls the roadmap. Engineering fundamentals become contracts with the people who depend on the service.
These feel unnatural to researchers, so Salva mixes service-minded engineers with researchers who carry the original vision and manages the shift as cultural change. His line: "you can't really delegate roadmap to an R&D team."
Large teams should reserve 5% to 10% for bold bets. Salva runs his larger teams at GitHub on roughly 5% to 10% bold bets, about 60% incremental work and 25% to 30% operations.
Operations keeps in-market products meeting customer expectations. Incremental work realizes the payoff of bets made one to four years earlier. He calls it a general principle, not a fixed rule.
A startup's split looks very different. A startup is all in on one bet, the proverbial lottery ticket. With no in-market products to run, the operations and incremental buckets barely exist.
Salva hires by asking candidates to teach something in one minute. He times it on his phone and grades completeness, complexity and clarity. Clarity means he actually learned something by the end.
The best answer covered 18th century art and its link to religious trends, from a Vanderbilt candidate he rated an "extremely strong yes hire".
Salva framed Copilot as an AI pair programmer to set behavior rules. A pair programmer who whispers politics or slander in your ear is too distracting to work with. That test set the principles for what the bot beside you may say.
He spent more time with legal on this product than on any other he has led.
GitHub replaced a crude word blocklist with AI models. Copilot launched with no filter, then a simple blocklist, then models from the Azure Department of Responsible AI that detect offensive content in context. Blocked words sometimes offended developers or cost them value.
Salva says "these blocklists are always fraught with peril." Context matters: a word that is offensive in one setting can be reasonable in medical software.
He keeps a human in charge and welcomes skepticism. The community doubts whether training on public code is acceptable and whether suggestions are secure or buggy. Salva wants people skeptical and keeps static analysis and unit tests in place.
He wants a human making reasoned decisions at the keyboard.
Trust work meant growing the product team faster than engineering. Constant give and take with developers required scaling product roles more than engineering roles. Good product managers spend as much time as possible with customers.
Scarce GPUs set a hard limit on growth. Training and running the models needs rare GPUs with little global supply. GitHub earmarked capacity and puts new chips into data centers as soon as they are produced.
Salva says "we are greedy greedy greedy for more capacity globally."
Suggestion quality tracks how much public code exists for a language. Copilot writes roughly 40% of code for Python developers, and the share ranges from the upper 20s to the 40s across languages. It shows up in lines written or acceptance rate.
Volume and diversity of training data correlate with quality.
Salva sees Copilot removing remembering so developers can create. Parameter order, syntax and dummy data are labor, not creating. Copilot brings documentation into the editor and replaces trips to tutorials and Stack Overflow.
His summary: "It's not creating, it's just typing." Developers find themselves a little addicted to it.
He expects AI to spread across the whole development stack. Salva sees developers moving toward design patterns and end-user outcomes while AI scaffolds the rest. In 5 to 10 years, more people could become developers while experienced ones tackle larger problems.
He names build queue management as another candidate for AI. Copilot is also used in education, where students build real tools with it at their side.