In this series, Matt Pocock is joined by expert developers, library creators, and core team members who share their experience working with TypeScript.
Listening to professionals share their real-world experience and workflows is a great way to refine your own skills and processes.
No matter what level of TypeScript experience you have, you’ll come away with ideas and inspiration that will expand your horizons and further your pursuit of TypeScript Wizardry.
Daniel Rosenwasser: TypeScript’s History and Growth
Daniel Rosenwasser, the program manager for TypeScript, discusses the language’s history and growth, highlighting key moments such as Angular’s adoption of TypeScript and collaborations that have contributed to its success. TypeScript has gained trust from developers by supporting various frameworks and improving features based on community discussion.
Shaundai Person: Adopting TypeScript at Netflix
Shaundai Person, a senior software engineer at Netflix, discusses her role in building tools and how adopting TypeScript helps keep the codebase organized, reduces errors, and facilitates a more grounded development approach. Shaundai shares insights on involving leadership in decisions, and how strong mentorship on teams leads to more successful TypeScript implementation.
Kadi Kraman: The TypeScript Culture at Formidable
Kadi Kraman, Director of Engineering for Mobile Services at Formidable, talks about using TypeScript for building modern web and mobile apps, and how it has become a natural choice due to the company’s robust software culture. Kadi compares TypeScript to Flow and Elm, discussing its flexibility and ease of learning.
Gabriel Vergnaud: Type and Value Level Mapping in TypeScript
Gabriel Vergnaud, author of Type Level TypeScript and the ts-pattern library, joins Matt to discuss how TypeScript’s type and value levels map together, the importance of inference, and how generic functions can increase code reusability. Gabriel also shares a real-world example of how Datadog uses internal type helpers and conditional types for complex data handling.
Orta Therox: Building Familiarity with TypeScript
Former TypeScript core team member Orta Therox offers insights into how developers can become more familiar and productive with TypeScript. Covering topics such as generics and compiler flags, Orta also emphasizes the importance of consulting resources like the TypeScript Handbook when feeling stuck.
Tejas Kumar: TypeScript for Bulletproof Apps
TypeScript and React expert Tejas Kumar shares his positive experience with TypeScript and its benefits in building “bulletproof” apps. Matt and Tejas discuss integrating TypeScript into the development workflow beyond the IDE, the future of TypeScript, and the added safety provided by using Zod.
Mark Erickson: Avoiding Breaking Changes & Improving Maintainability
Redux maintainer Mark Erickson talks about his journey learning TypeScript and the challenges he faced refactoring large parts of Redux codebases. Mark also shares his experience improving the TypeScript types of the Reselect library, reducing duplication, and enhancing maintainability.
Tanner Linsley: Exploring Generics in React Query
Tanner Linsley, creator of the TanStack collection of open-source libraries, shares his experience building React Query with TypeScript. Tanner discusses the importance of generics for customizable data handling and provides tips for effective usage, despite their potential complexity.
Colin McDonnell: Design Choices Behind Zod
In this interview, Colin McDonnell, the creator of the TypeScript validation library Zod, discusses the motivations and design choices behind the project. Colin explains the importance of deeply understanding generics and conditionals for ensuring type safety, and shares code walkthroughs to demonstrate Zod’s inner workings.
Alex “KATT” Johansson: Developing tRPC
Alex Johansson, the creator of the popular TypeScript library tRPC, shares challenges faced during development, including complex generics, the builder pattern, and the importance of types to the API. Alex also leads a walkthrough of the code and design decisions behind the tRPC library.