Let's refine your Scala Code

Tech Triveni speaker Ajay Viswanathan

Ajay Viswanathan

Senior Software Engineer


About Ajay Viswanathan

Ajay has over 5 years of experience with Scala, Spark, Big Data and Javascript. The underlying thread in all of those is Functional Programming and especially Category Theory that I've taken a deep interest in the past couple of years. He is passionate about elegant design patterns that make life easy for the next Developer. I prefer Cats over Scalaz. Vertx over Akka. Circe over JSON4s.


This talk aims to be a gentle introduction to Refinement types in Scala. The talk will also introduce many related topics in the subculture of Typelevel programming in FP like Type theory, Generics (Shapeless), Optics (Monocle) and Law-based testing.

Why refinement types?

When 'String' just doesn't cut it anymore. By encoding validation into a type at the edge-of-the-system layer of your application, you can build your core domain logic without having to worry much about type-safety.

Who is it for?

Ajay would be revisiting the necessary foundations at the beginning of the talk, so beginners are welcome. People who have worked on Scala before would be able to appreciate the power of refined types more.

Share the talk