Talks
I speak at ElixirConf and RailsConf, mostly about the open-source libraries I maintain. The best place to start is Supercharging Kafka Processing with Broadway from ElixirConf 2024, the most recent talk and the only one with video.
Contents
ElixirConf
Supercharging Kafka Processing with Broadway: Achieving Unmatched Parallelism and Efficiency
ElixirConf, 2024. How we harnessed the power of Broadway to supercharge our Kafka message processing, achieving unparalleled parallelism in a high-stakes, mission-critical environment. Discover the challenges we faced, the innovative solutions we implemented, and the transformative benefits we reaped. Learn how Broadway enabled us to scale effortlessly, meeting the ever-growing demands of our dynamic Software as a Service business.
RailsConf
Background Jobs with Types
RailsConf, 2017. Lightning talk aimed at the Rails core team, making the case for typed arguments and attributes in background jobs.
RocketJob: Ruby's Missing Batch System
RailsConf, 2016. Lightning talk for Rails developers on RocketJob, the open-source distributed job and batch processing system Reid created and maintains. Covered running background jobs in business-priority order and slicing huge files into pieces that thousands of workers process in parallel, all coordinated through MongoDB with no separate message broker.
Pragmatic Concurrency
RailsConf, 2015. Lightning talk for Rails developers on why concurrency is hard to get right in Ruby, and Parallel Minion, the open-source gem Reid created and maintains to make it more approachable. Covered running I/O-bound work such as database queries, HTTP calls, and external service requests on separate threads so independent steps overlap, with exceptions re-raised on the calling thread and timeouts to bound the wait.
Logging That Makes Us Happier
RailsConf, 2014. Lightning talk for Rails developers on Semantic Logger, the open-source gem Reid created and maintains for high-performance, asynchronous structured logging in Ruby and Rails. Made the case for structured, tagged log entries with levels and metrics, written on a background thread so the application never waits on logging, as a critical part of running mission-critical systems.
Rails Encryption
RailsConf, 2012. Lightning talk for Rails developers on encrypting sensitive data at rest, using Symmetric Encryption, the open-source gem Reid created and maintains. Covered encrypting Active Record attributes and passwords in configuration files such as database.yml, with the encryption keys held outside the source code.
Red Hat Road Show
Open Source Technology Adoption
Red Hat Road Show, 2008. A large audience of Tampa Bay business and technology leaders evaluating open source for their own companies. As Software Architect at WellCare my role was to introduce open source technologies into the company, and this talk walked through several of the projects we delivered successfully with them. A significant part of it covered how we used RHEL containerization to deploy our production infrastructure, five years before Docker existed. It is where my evangelism of open source to business leaders started.
Ruby Meetups
Secret Config
Ruby Meetup, 2019. Talk for the local Ruby community on Secret Config, the open-source gem Reid created and maintains for centralized configuration and secrets management in Ruby and Rails. Covered loading a tree of settings from AWS SSM Parameter Store or AWS Secrets Manager into memory at startup, overriding any individual setting with an environment variable, and keeping credentials out of source control entirely.
Logging Best Practices
Ruby Meetup, 2018. Talk for the local Ruby community on structured logging and how Semantic Logger, the open-source gem Reid created and maintains, makes it practical: log levels, measuring block durations, tagging and named tags to trace requests across threads, shipping structured, machine-readable log entries to destinations such as Elasticsearch, and building metrics and dashboards from them.
Logging that makes DevOps happy
Ruby Meetup, 2016. Talk for the local Ruby community on structured logging and how Semantic Logger, the open-source gem Reid created and maintains, makes it practical: log levels, measuring block durations, tagging and named tags to trace requests across threads, shipping structured, machine-readable log entries to destinations such as Elasticsearch, and building metrics and dashboards from them.
Symmetric Encryption: Encrypting Sensitive Data in Rails
Ruby Meetup, 2012. Talk for the local Ruby community introducing Symmetric Encryption, the open-source gem Reid created and maintains for encrypting sensitive data at rest in Ruby and Rails applications. Covered encrypting Active Record attributes, passwords in configuration files, and keeping encryption keys outside the source code in a separate keystore.
MongoDB and Mongoid
Ruby Meetup, 2012. Talk for the local Ruby community on MongoDB and Mongoid, introducing how a NoSQL document database fits into a Rails application as an alternative or complement to a relational database.
Contributions
I diagnosed a Rails 4 ActiveRecord connection pool performance regression under concurrent load (rails/rails#14891) and proposed a fix (rails/rails#14926). The Rails core team reviewed it and merged a smaller-scope version of the fix, split into several commits, in rails/rails#14938.
Training
RocketJob Training
Business Training, 2023. Full-day training for business and technical users on operating RocketJob day to day, primarily from the Mission Control web interface. Covered what a job and a worker are, monitoring and managing running jobs, deployments, directory monitoring with Dirmon, read-only and write jobs, the commonly used built-in jobs, access control, and tips and tricks.
Remote Work: Observations and Personal Recommendations
Business Training, 2020. Talk for business users on transitioning to the remote work environment forced by the Covid shutdowns, drawing on insights from the engineering team's years of hands-on remote work experience.
Slack Overview: Using Slack for Remote Work
Business Training, 2020. Talk for business users on using Slack to run teams that had newly transitioned to remote work during the Covid shutdowns, drawing on insights from the engineering team's years of hands-on remote work experience.
Speaking enquiries
The fastest way to reach me is LinkedIn.