Listen now on Apple, Spotify, and YouTube.
Brought to you by:
• Launch Darkly — a platform for high-velocity engineering teams to release, monitor, and optimize great software.
• Sevalla — Deploy anything from preview environments to Docker images.
• WorkOS — The modern identity platform for B2B SaaS.
—
Linear is a small startup with a big impact: 10,000+ companies use their project and issue-tracking system, including 66% of Forbes Top 50 AI companies. Founded in 2019, the company raised $52M in funding and is profitable, and full-remote. How did they pull this off with just 25 engineers?
On today’s episode of The Pragmatic Engineer, I’m joined by fellow Uber alum, Sabin Roman, now the first Engineering Manager at Linear. Linear, known for its powerful project and issue-tracking system, streamlines workflows throughout the product development process.
In our conversation today, Sabin and I compare building projects at Linear versus our experiences at Uber. He shares insights into Linear’s unique approaches, including:
How Linear handles internal communications
The “goalie” program to address customer concerns and Linear’s zero bug policy
How Linear keeps teams connected despite working entirely remotely
An in-depth, step-by-step walkthrough of a project at Linear
Linear’s focus on quality and creativity over fash shipping
Titles at Linear, Sabin’s learnings from Uber, and much more!
My biggest takeaways from this conversation:
1. Linear has a preference for creativity over process – when the goal is creativity! Linear is intentionally light on engineering processes when they build new products: their goal is to communicate using “principles” rather than “guidebooks.” The company manages to do this thanks to a mix of hiring engineers with strong product skills and still being a small enough company (60 people and 25 engineers at the time of writing).
2. Full remote is hard – especially for managers! And yet, there are payoffs to this approach. Sabin has been managing a full-remote team for two years, and this is how he puts it:
“It’s harder for managers to manage remote teams. It just is. It’s harder to build that trust and that connection. To get a pulse on what troubles them and what motivates them. But ultimately, my job as a manager is not to make my life easier.
I really wish that more managers would be more open to working remotely, because it does make your team’s life better. Your team can focus better. It allows flexibility.”
3. Starting a zero-bug policy is hard, but it’s much easier to continue once in place. Sabin admits that he was initially skeptical about whether it was feasible to implement an actual zero-bug policy.
However, after the initial few months of fixing existing bugs, he now sees that it works, and it works without overloading engineers. Part of the success seems to be in giving engineers the freedom to both decide when a bug should be considered a bug – and giving them autonomy in deciding how they use their time.
4. Despite working at Uber for 7 years, Sabin brought relatively few approaches from this large company to Linear. Reflecting on why Uber and Linear are so different: a lot of it comes down to size, and the effectiveness of communication with a smaller team. As Sabin put it:
“You can’t underestimate the difference it makes for still being a startup. That takes away a lot of the challenges.”
This is a good reminder for anyone moving from Big Tech to a smaller company: don’t expect the same processes to work! We covered more on this topic in the deepdiveHiring software engineers from Big Tech.
(00:00) Intro
(01:41) Sabin’s background
(02:45) Why Linear rarely uses e-mail internally
(07:32) An overview of Linear's company profile
(08:03) Linear’s tech stack
(08:20) How Linear operated without product people
(09:40) How Linear stays close to customers
(11:27) The shortcomings of Support Engineers at Uber and why Linear’s “goalies” work better
(16:35) Focusing on bugs vs. new features
(18:55) Linear’s hiring process
(21:57) An overview of a typical call with a hiring manager at Linear
(24:13) The pros and cons of Linear’s remote work culture
(29:30) The challenge of managing teams remotely
(31:44) A step-by-step walkthrough of how Sabin built a project at Linear
(45:47) Why Linear’s unique working process works
(49:57) The Helix project at Uber and differences in operations working at a large company
(57:47) How senior engineers operate at Linear vs. at a large company
(1:01:30) Why Linear has no levels for engineers
(1:07:13) Less experienced engineers at Linear
(1:08:56) Sabin’s big learnings from Uber
(1:09:47) Rapid fire round
The Pragmatic Engineer deepdives relevant for this episode:
• The story of Linear, as told by its CTO
• An update on Linear, after their $35M fundraise
• Software engineers leading projects
• Netflix’s historic introduction of levels for software engineers
Where to find Sabin Roman:
• X: https://x.com/sabin_roman
• LinkedIn: https://www.linkedin.com/in/sabinroman/
Mentions during the episode:
• Linear: https://linear.app/
• Typescript: https://www.typescriptlang.org/
• React: https://react.dev/
• Node: https://nodejs.org/en
• GCP: https://cloud.google.com/gcp
• GraphQL: https://graphql.org/
• Triage at Linear: https://linear.app/docs/triage
• Tuomas Artman on LinkedIn: https://www.linkedin.com/in/tuomasartman/
• Uber's Crazy YOLO App Rewrite, From the Front Seat: https://blog.pragmaticengineer.com/uber-app-rewrite-yolo/
• Netflix’s historic introduction of levels for software engineers: https://blog.pragmaticengineer.com/netflix-levels/
• Interstellar on Prime Video: https://www.amazon.com/Interstellar-Matthew-McConaughey/dp/B00TU9UFTS
• The Story of Linear as told by its CTO: https://newsletter.pragmaticengineer.com/p/linear
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, please email podcast@pragmaticengineer.com.