Reading Time: 3 minutes
Photo Credit: COUNTRYDevOps Keynote, 11 October 2018

Looking for a conference speaker?

I sometimes speak at tech conferences, staff retreats, universities, and bootcamps. My talks tend to be:

  • Didactic: I teach a topic. I draw examples from my career, but the talk does not center me or my personal experience. I don’t talk about my journey into software development, for example.
  • Technical: I focus on things I think engineers should know (though I make sure to include something for designers and product folks, too). The examples come from application or machine learning development projects. The slides may have code samples.
  • Language and version agnostic: I stick to principles and approaches that remain valuable across languages, frameworks, and versions. I don’t talk about what’s new in the latest Android SDK release, for example.

The talks I have ready right now are:

How to Level Up as a Technologist

Length: 35-45 Minutes

Brochure Pitch:

To thrive as a technologist, you need to constantly level up your skill set.

That sounds daunting: after all, there’s so much to learn. You might have even experienced some false starts in the past where you tried to learn a new skill and it didn’t work out.

It’s not because you can’t. In fact, I’m confident that you already have the innate ability to add breadth and depth to your skill sets.

I know that because I know that you use that ability every day to stay current as a technologist.

Leveling up is itself a skill that you can sharpen. Today we’ll talk about some techniques that you can use to get better at leveling up. These techniques will help you translate your innate ability to learn so you can broaden and deepen your skill set more effectively, and even enjoy doing it!

Full Transcript and Slides Available At:


The Technology and Psychology of Refactoring

Length: 45-60 Minutes

Brochure Pitch:

When the requirements change out from under your tech team, your code has to change. So it’s worthwhile to build your skills in assessing code maintainability, deciding whether to refactor, and doing the refactor.

In this talk, we’ll answer questions like:

  • What does it mean for code to be maintainable, and how do we make code more maintainable?
  • How do we know when to refactor—and how do we know when to stop refactoring?
  • How do we sell stakeholders on giving us space to make a large refactor?

This talk includes both code samples and architecture samples from apps in use today.

Full Transcript and Slides Available At:


Partial Video (first half) Available At:

Under special circumstances, I can build and deliver a custom talk.

Right now, for both of the above talks, I’d love to get a clean video/audio recording. If your event can do that, let’s chat.