Supported by Our Partners
• Swarmia — The engineering intelligence platform for modern software organizations.
• Sentry — Error and performance monitoring for developers.
—
Why did Meta build its own internal developer tooling instead of using industry-standard solutions like GitHub? Tomas Reimers, former Meta engineer and co-founder of Graphite, joins the show to talk about Meta's custom developer tools – many of which were years ahead of the industry.
From Phababricator to Sandcastle and Butterflybot, Tomas shares examples of Meta’s internal tools that transformed developer productivity at the tech giant. Why did working with stacked diffs and using monorepos become best practices at Meta? How are these practices influencing the broader industry? Why are code reviews and testing looking to become even more critical as AI transforms how we write software? We answer these, and also discuss:
• Meta's custom internal developer tools
• Why more tech companies are transitioning from polyrepos to monorepos
• A case for different engineering constraints within the same organization
• How stacked diffs solve the code review bottleneck
• Graphite’s origin story and pivot to their current product
• Why code reviews will become a lot more important, the more we use AI coding tools
• Tomas’s favorite engineering metric
• And much more!
—
Timestamps
(00:00) Intro
(02:00) An introduction to Meta’s in-house tooling
(05:07) How Meta’s integrated tools work and who built the tools
(10:20) An overview of the rules engine, Herald
(12:20) The stages of code ownership at Facebook and code ownership at Google and GitHub
(14:39) Tomas’s approach to code ownership
(16:15) A case for different constraints within different parts of an organization
(18:42) The problem that stacked diffs solve for
(25:01) How larger companies drive innovation, and who stacking diffs not for
(30:25) Monorepos vs. polyrepos and why Facebook is transitioning to a monorepo
(35:31) The advantages of monorepos and why GitHub does not support them
(39:55) AI’s impact on software development
(42:15) The problems that AI creates, and possible solutions
(45:25) How testing might change and the testing AI coding tools are already capable of
(48:15) How developer accountability might be a way to solve bugs and bad AI code
(53:20) Why stacking hasn’t caught on and Graphite’s work
(57:10) Graphite’s origin story
(1:01:20) Engineering metrics that matter
(1:06:07) Learnings from building a company for developers
(1:08:41) Rapid fire round
(1:12:41) Closing
—
The Pragmatic Engineer deepdives relevant for this episode:
• Stacked Diffs (and why you should know about them)
• Inside Meta’s engineering culture
• Shipping to production
• How Uber is measuring engineering productivity
—
See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
—
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com.
Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
Nyd den ubegrænsede adgang til tusindvis af spændende e- og lydbøger - helt gratis
Dansk
Danmark