I’m a software engineer and mentor at Welld, focused on building high-quality React Native mobile apps and helping our community grow. I’m passionate about creating tools and practices that make development smoother and teams more effective. Beyond code, I love sharing knowledge through tech talks, workshops, and mentorship, turning complex ideas into clear, engaging stories. For me, great developer experience is just as important as great user experience, and that belief shapes both the products I build and the way I share them.
Type systems define how we reason about code, enforce safety, and manage complexity — but not all type systems approach these goals the same way. In this talk, I pit structural typing, as in TypeScript, against nominal typing, as in Kotlin, in a practical exploration of real-world scenarios. You’ll see side-by-side examples of how each system handles interoperability, composition, and code evolution, revealing where explicit identities enforce discipline and where shape-based typing unlocks flexibility and expressiveness. By the end, you’ll understand the strengths and trade-offs of each approach — and why, in many situations, structural typing gives you a surprising advantage.
Searching for speaker images...