Conferences, meetups, webinars, and companies that have kindly hosted one of my talks.

  Date Slides Title City Host
Conference 2016-08-16 Revitalizing Aging Architectures San Diego, US Gartner Catalyst
Conference 2016-08-05 Scala: State of the Union Montreal, Canada Scala Up North
Roundtable 2016-08-03 Being Reactive is Good New York, US Reactive Roundtable
Roundtable 2016-05-25 Being Reactive is Good Chicago, US Reactive Roundtable
Webinar 2016-05-05 Microservices, Monoliths, SOA, and how we got here Lightbend
Meetup 2016-03-21 Reactive Streams: The Glue of the Real-time Organization New York, US Open Source Analytics New York
Webinar 2016-03-10 The 6 Rules for Modernizing your Aging Java Monolith with Microservices Lightbend
Webinar 2016-01-20 Revitalizing Aging Architectures with Microservices Lightbend
Conference 2015-12-01 Revitalizing Walmart's Aging Architecture For Web Scale Las Vegas, US Gartner AADI Summit
Conference 2015-10-22 Being Reactive is Good Las Vegas, US SAP TechEd
Conference 2015-09-24 Being Reactive is Good Houston, US Schlumberger Software Symposium
Meetup 2015-09-09 Reactive Streams and Akka Streams Dallas, US Dallas JavaMUG
Meetup 2015-08-06 A Journey into Reactive Streams Baltimore, US Baltimore Scala
Meetup 2015-08-05 A Journey into Reactive Streams Washington DC, US DC Scala
Meetup 2015-07-22 Exploring Reactive Streams with Akka Boston, US Boston Scala
Meetup 2015-07-09 Exploring Reactive Streams with Akka Toronto, Canada ReactiveTO
Webinar 2015-06-24 Forrester: Modernizing Your Aging Architecture Lightbend
Meetup 2015-05-31 Going Reactive Atlanta, US Atlanta Scala
Meetup 2015-05-19 Reactive Web Development with Play Seattle, US Seattle Scala
Meetup 2015-05-14 Reactive Web Development with Play Dallas, US Dallas Scala
Meetup 2015-05-13 Reactive Web Development with Play Austin, US Austin Scala
Roundtable 2015-04-09 Intro to Distributed Systems and FP (with Scala and Akka) Brampton, Canada Sheridan College
Webinar 2015-01-14 Getting Started with Play and Activator Lightbend
Conference 2014-10-23 Go Reactive! With Scala, Play, and Akka Prague, CZ GeeCON
Meetup 2014-07-24 A Night of Reactive Programming Toronto, Canada ReactiveTO
Webinar 2014-05-05 Enterprise Web Development with Play and Scala Lightbend

Slide Decks

If you are presenting on a subject that I have covered below and would like to borrow materials, feel free to get in touch.

Scala: State of the Union

In this keynote, we discuss the past, present, and future of Scala; where it has been and where it’s going. While this talk will focus on the new language features introduced in 2.12, it will also dive into an equally important aspect of Scala in 2016: the incredible community that’s grown up around Scala over the years. Kevin will frame the talk around his own journey to Scala and how both the language and the community made him a better developer and architect.

Microservices, Monoliths, SOA, and how we got here

A bit of history of application development, from the early days of monoliths and SOA to the emergence of Microservice architectures. We will review the drawbacks of heritage architectures and how the principles of Reactive can help you build isolated services that are scalable, resilient to failure, and combine with other services to form a cohesive whole.

Reactive Streams: The Glue of the Real-Time Organization

The “real-time organization” reacts to information now rather than basing critical decisions on stale data. This requires reimagining how data flows through your organization, moving away from data at rest and moving towards a completely event-based streaming architecture. Events become the lifeblood of the organization, while analytics becomes the brain. Organizations that successfully harness the power of real-time event streaming can transform analytical latencies from hours to seconds.

This session will describe a reference architecture using the Lightbend Reactive Platform and other tools that can be used to build out the real-time organization, leveraging real-time data to produce analytics that result in immediate, actionable insights.

Microservices: Architecture for the Real-time Organization

The real-time organization is responsive to change. Real-time organizations architect their systems to evolve naturally as they adapt to the competitive landscape around them. At the core of real-time organizations are microservices. The microservice architecture (MSA) empowers independent teams within large organizations to move at the pace of startups, freeing them from the constraints of “design by committee” and other architectural anti-patterns that ground productivity within the enterprise to a halt.

We explore all of the relevant patterns of microservices architecture including domain-driven design (DDD), circuit breaker, data pump, saga pattern, distributed transaction, async messaging, etc.

Revitalizing Aging Architectures with Scala, Akka, and Microservices

When you need to react quickly to competitive threats, but your existing architecture is anything but nimble, what do you do? You will hear the story of how Walmart Canada revitalized its aging architecture with a microservices model built for speed and performance - that efficiently leveraged its JVM infrastructure - to achieve major e-commerce success in just 12 months.

Being Reactive is Good

One of the more difficult aspects of systems architecture is finding concrete terms to describe desirable characteristics that everyone understands. Reactive was one of those terms until two years ago, when the Reactive Manifesto was released. Today, over 12,000 people have signed the online document and participated in its evolution. But what does it mean, and how do the principles described by it help developers engineer systems that are elastic, resilient and responsive to users in the face of bursty load and random/unknown failures? We will discuss these topics, as well as clearly discuss the concepts of asynchronous tasks, non-blocking threads, concurrency issues and parallelism.

The goal of this talk is to frame the term reactive in a positive light, because when it comes to building real-time systems, being reactive is good.

Reactive Web Development with Play 2.3

We cover every aspect of building a reactive web application with Play 2.3, including integration with AngularJS. We also cover the fundamentals of reactive programming including the importance of embracing futures for async, non-blocking integration.

Introduction to Building Distributed Systems with Scala and Akka

We explore the reasons for building distributed systems framed around the “fallacies of distributed computing”. We contrast those fallacies against the requirements, constraints, and realities of building a modern system today, using Scala and Akka for all examples.

I originally gave this talk to the faculty of Sheridan College, Applied Sciences. The idea was to show at a broad-scope where the industry is heading over the next 5-10 years due to overwhelming demand and expectations placed on public-facing web systems.

Interested in meeting?

I organize a few local groups for programmers in the Toronto area. If you'd like to meet in person, feel free to come out to one of these events.

Interested in chatting?

I'm located in Toronto, Canada. If you're interested in learning more about anything I've published and would like to meet via Skype or have a coffee in Toronto, feel free to contact me at one of the links below.