I often speak about genetic data sharing and software development in Java. My talks are typically highly interactive, live-coding sessions featuring very few slides. Some of the topics I've covered recently in talks include a case study of a global search engine for genetic data, a series of interactive explorations of features in new releases of Java, reactive programming, best practices for writing clean code, and typing. I also coach (typically full-day) workshops on software development.

Attendees have voted my talks Exploring what's new in Java in 2018 and Clean code with Java 9 in the Top 10 talks at Devoxx and GeeCON, respectively. I've also been voted a top speaker at JavaOne and an Oracle Code One Star based on my Exploring Java 9 with REPL session.

My recent speaking engagements:

EventLocationDateSession titleMaterials
J4KonlineOct 2020Exploring reactive programming in Javavideo, slides
J4KonlineOct 2020Exploring the latest and greatest from Java 14video, slides
ConFooMontreal, QC, CanadaFeb 2020Local variable type inference - will it compile? ()slides, code
ConFooMontreal, QC, CanadaFeb 2020Exploring the last year of Java ()slides, code
DevoxxKiev, UkraineNov 2019Local variable type inference - will it compile? ()video, slides, code
DevoxxKiev, UkraineNov 2019Exploring reactive programming in Javaslides, code
Java Dev DayGuadalajara, Jalisco, MexicoSep 2019The good, the bad and the ugly of Java API designslides, code
Java Dev DayGuadalajara, Jalisco, MexicoSep 2019Exploring reactive programming in Javaslides, code
Toronto Java User GroupToronto, ON, CanadaJune 2019Pub Quiz: Local Variable Type Inference ()video, code
Voxxed DaysMinsk, BelarusMay 2019The good, the bad, and the ugly of Java API design ()video, slides, code
Voxxed DaysMinsk, BelarusMay 2019Writing clean code with modern Javavideo, slides
ConFooMontreal, QC, CanadaMar 2019Exploring reactive programming in Javaslides, code
ConFooMontreal, QC, CanadaMar 2019Writing clean code with modern Javaslides, code
DevNexusAtlanta, GA, USAMar 2019Exploring what's new in Java 10 and 11 (and 12)video, slides, code
CodemotionMilan, ItalyNov 2018Exploring what's new in Java 10 and 11video, slides, code
DevoxxKiev, UkraineNov 2018Exploring what's new in Java in 2018 ()slides, code
Voxxed DaysThessaloniki, GreeceNov 2018Reactive programming with Java in 2018video, slides, code
DevoxxAntwerp, BelgiumNov 2018Exploring reactive programming in Java ()video, slides, code, interview
DevFestToulouse, FranceNov 2018Exploring reactive programming in Javavideo, slides, code
Voxxed DaysBristol, UKOct 2018Writing clean code with Java in 2018slides, code
Voxxed DaysBristol, UKOct 2018Exploring reactive programming in Javaslides, code
GeeCONPrague, Czech RepublicOct 2018Pushing boundaries of types with modern Java ()video, slides, code
Strange LoopSt. Louis, MO, USASep 2018How we've made a global search engine for genetic data ()video, slides
VelocitySan Jose, CA, USAJun 2018How we built a global search engine for genetic datavideo, slides
Voxxed DaysAthens, GreeceJun 2018Writing clean code with Java 9+video, slides, code
GeeCONKrakow, PolandMay 2018Clean code with Java 9 (, )video, slides, code, blog
DevTOToronto, ON, CanadaMay 2018Building a global search engine for genetic datavideo, slides, blog
Java With The BestonlineApr 2018Exploring Java 9 with REPLslides, code, blog
IndexSan Francisco, CA, USAFeb 2018How we built a global search engine for genetic datavideo, slides, blog
IndexSan Francisco, CA, USAFeb 2018Exploring Java 9 with REPLvideo, slides, code, blog
Singapore Java User GroupSingaporeJan 2018Java 9, Episode 2video, slides, code, blog
Toronto Java User GroupToronto, ON, CanadaOct 2017Exploring Java 9 APIs with JShellvideo, slides, code, blog
Full Stack TorontoToronto, ON, CanadaOct 2017Effective Prototyping with Java 9slides, code, blog
JavaOneSan Francisco, CA, USAOct 2017Exploring Java 9 with REPL (, )video, slides, code, blog
DevoxxSan Jose, CA, USAApr 2017REPL: Java developer's new friendvideo, slides, code, blog

Full-day or multi-day workshops:

EventLocationDateSession titleMaterials
Voxxed DaysCluj-Napoca, RomaniaOct 2019Master class in modern Java ()slides
Voxxed DaysMinsk, BelarusMay 2019Master class in modern Javaslides
Voxxed DaysThessaloniki, GreeceNov 2018Master class in Java in 2018 ()slides
Voxxed DaysAthens, GreeceJun 2018Deep Dive in Java 9+slides

More videos are available on my LinkedIn profile, more slides on SlideShare.