Senior Software Engineer
I build Rails systems that stay workable as they grow.
Writing production Ruby on Rails since 2018, mostly on codebases large enough that structure matters. I contribute upstream to the tools I use, including Rails itself, Basecamp's open source projects and the platform that runs DEV.

About
Where I focus.
I work primarily in Ruby on Rails, on the kind of applications where a change in one place has consequences somewhere else. Modularization, background processing, real-time delivery and the performance work that follows once a system has real traffic.
The work I am proudest of tends to be unglamorous: a silent configuration bug found by measuring instead of assuming, a sanitizer that turned out not to be transparent, a cache that was never invalidated. I write about those on the blog.
Open Source
Contributing upstream.
I work on the tools I use. Contributions to 9 public projects including Ruby on Rails, Basecamp's open source apps and the platform that runs DEV, with 7 merged so far.
- Forem★ 22.4k
forem/forem
The open source platform behind DEV Community.
- MergedNotify co-authors when a post they are credited on is published
- MergedRender Mermaid diagrams from fenced mermaid code blocks
- MergedDisplay published dates in the reader's local timezone
- MergedPrevent blank comments containing only markdown tags
- OpenFollow the OS colour scheme with a system theme option
- OpenAllow users to remove their profile image
- OpenStop pending organization invitees getting member privileges
- OpenRender GitHub-style alert blocks in markdown
- Openship★ 14.1k
oblien/openship
Self-hosted deployment platform.
- Ruby on Rails★ 58.7k
rails/rails
The framework I build on every day.
- Fizzy★ 8.1k
basecamp/fizzy
Basecamp's Hotwire-native application.
- GoodJob★ 3k
bensheldon/good_job
Postgres-based Active Job backend for Rails.
- Lexxy★ 1.2k
basecamp/lexxy
Basecamp's rich text editor for Rails.
- OpenKeep the editor mounted when Turbo caches without navigating
- OpenResolve the link under a caret sitting at its trailing edge
- OpenOffer a caret between an attachment and the block container beside it
- OpenKeep pasted text that markdown renders to nothing
- OpenLower lexxy-content.css to the specificity its :where() wrapper advertises
- Propshaft★ 1k
rails/propshaft
The modern Rails asset pipeline.
- RuboCop Rails★ 875
rubocop/rubocop-rails
RuboCop extension enforcing Rails best practices.
- ApexYard★ 515
me2resh/apexyard
SDLC framework for running a project portfolio with Claude Code.
Experience
Where I have worked.
Nov 2024 - Present
Software Engineer III
Blink Tech, Inc. & NXT Solutions LLC
Contract work, remote. Building and maintaining enterprise Rails applications.
- Ruby on Rails
- PostgreSQL
- Sidekiq
Feb 2024 - Nov 2024
Software Engineer III
Illa
Led modularization with Packwerk, engineered real-time notifications over FCM, and built the Driver App.
- Ruby on Rails
- Packwerk
- Sidekiq
Jul 2023 - Dec 2023
Software Engineer III
Advanced Internet Technologies, Inc. (AIT)
Worked on performance across a large Rails codebase.
- Ruby on Rails
- Performance
Feb 2023 - Aug 2023
Software Engineer II
Bevatel
Built a business chat platform with real-time messaging and third-party integrations.
- Ruby on Rails
- WebSockets
Feb 2022 - Mar 2023
Software Engineer II
Acute Business
Developed LMS and SIS systems, and the Woqody fuel management platform.
- Ruby on Rails
- PostgreSQL
2020 - 2021
Software Engineer
Military service
Worked as a software engineer while serving in the army.
2018 - 2020
Software Engineer
Enbarter
Worked as a software engineer while completing a Computer Science degree.
Capabilities
What I can help with.
Rails application development
End to end product work in Ruby on Rails, from data modelling through to the front end.
APIs and integrations
RESTful and GraphQL API design, service boundaries, authentication and third-party integrations.
Architecture and modularization
Breaking large codebases apart with domain-driven boundaries, Packwerk and caching strategy.
Real-time systems
WebSockets, background processing with Sidekiq, and push notification delivery.
Performance work
Query and cache profiling, N+1 elimination, and reducing operational cost under load.
Code review and mentoring
Reviews, performance audits and helping teams settle on practices they will keep.
Writing
Recent posts.
- The Security Fix That Would Have Silently Broken My FeatureShipping Mermaid diagram support to Forem, the platform behind DEV. A CodeQL alert had an obvious one-line fix that would have quietly destroyed the labels on four of five diagram types.
- Script Tracker: Migration-Style Management for Rails One-Off ScriptsBring the reliability and tracking of database migrations to your one-off scripts with Script Tracker, a Ruby gem that ensures every script is tracked, logged, and managed with confidence.
Contact
Get in touch.
Open to interesting Rails work and happy to talk about open source.