Joseph O'Driscoll · Web Application Consultant
Interfaces for content-heavy products.
I build and rescue content-heavy sites and apps: WordPress, Craft, and Drupal on the server, React, Vue, and Angular in the browser, and Expo when it has to fit in a pocket.
- Management
- Mentoring
- Tutoring
- AI Agnostic
- Marketing Savvy
- Cost Effective
- No Client Is Too Small
- Cost Analysis
- Estimates and Proposals
- Scoping
- Discovery
- Requirements Gathering
- Stakeholder Communication
- Client Management
- Vendor Coordination
- Technical Summaries
- Technical Documentation
- Runbooks
- Postmortems
- Architecture Decision Records
- Documentation
- Onboarding Guides
- Release Notes
- Changelogs
- Audits and Reports
- Agile
- Scrum
- Kanban
- Waterfall
- Sprint Planning
- Backlog Grooming
- Story Pointing
- Standups
- Retrospectives
- Roadmapping
- Jira
- Linear
- Asana
- Code Review
- Pair Programming
- Team Leadership
- Hiring and Interviews
- PHP Upgrades
- Timber Upgrades
- WordPress Core Upgrades
- Plugin Audits
- Dependency Updates
- Performance Troubleshooting
- Core Web Vitals
- Lighthouse
- Performance Budgets
- Caching
- Redis
- Incident Response
- Security Scanning
- Malware Cleanup
- Two-Factor Authentication
- Backups and Restores
- Domain Management
- DNS
- SSL
- Organizational Email Configurations
- SPF
- DKIM
- DMARC
- Google Search Console
- Google Analytics 4
- Google Tag Manager
- Technical SEO
- Structured Data
- Sitemaps
- Android Play Console
- Apple TestFlight
- App Store Connect
- App Store Releases
- Accessibility First
- WCAG
- Section 508
- WordPress
- Bedrock
- Timber
- Twig
- Advanced Custom Fields
- Gravity Forms
- Gutenberg Blocks
- Multisite
- Craft CMS 5
- Drupal
- Headless CMS
- Content Modeling
- Migrations
- Expo
- React Native
- React
- Vue
- Angular
- Next.js
- Astro
- TypeScript
- JavaScript
- PHP 8.4
- Node.js
- Sass
- Tailwind CSS
- CI Pipelines Built, Not Just Used
- GitHub Actions
- GitLab CI
- Docker
- Lando
- DDEV
- AWS
- Pantheon
- WP Engine
- Craft Cloud
- Kinsta
- Vercel
- Cloudflare
- Supabase
- MySQL
- Visual Regression Testing
- Automated Testing
- Site Migrations
- Hosting Migrations
- Coding Standards
- Design Review
- Remote Across Time Zones
- Writes It Down
- Measures Before Restyling
01 · Selected work
All Work →Products worth sharing
GameKal
A release calendar for PC, PlayStation, Xbox and Switch games. One Expo and React Native codebase ships the web app, iOS and Android, fed by a catalog scraped from nine storefronts, with 538 automated tests.
- React Native
- Supabase
- Vite
- Storybook
- Three.js
- Swift
- React
- TypeScript
- Vercel
ZEFR
Zefr's marketing site rebuilt on Craft CMS 5 and moved onto Craft Cloud, with a Neo block library editors build pages from, SAML single sign-on, SEOmatic and a Vite build.
- MySQL
- nginx
- Vite
- Craft Cloud
- DDEV
- Lotti.js
- PHP
- Craft CMS
Cascade Space
A Next.js 14 static site for a space-technology company, assembled from a typed block library: every block has a TypeScript interface, a Storybook story and Vitest tests, and every word lives in content files ready for a CMS.
- Tailwind CSS
- Storybook
- Vimeo Player
- CSS
- React
- TypeScript
- Vercel
- Next.js
Echoes of History
An educational app for evidence-based historical reasoning, built through tutoring: TanStack Start and React 19, Supabase auth and saved reports, Vercel's AI Gateway and BotID, with answer keys kept on the server.
- Supabase
- Tailwind CSS
- Vite
- CSS
- React
- TypeScript
- Vercel
TruBridge
TruBridge's site, for a healthcare IT company: a custom Timber and Twig WordPress theme on WP Engine, with events, products and resources as their own content types and an admin trimmed to what editors use.
- WP Engine
- WordPress
- Timber
- Twig
- Advanced Custom Fields
- Alpine.js
- Swiper
- Google Tag Manager
- Vimeo Player
- CSS
- Lotti.js
- PHP
- JavaScript
Election Center
The Election Center trains and certifies election officials. Its site is Bedrock WordPress with a Timber and Twig theme, WP Rocket and Redis for speed, and BackstopJS visual regression tests in CI.
- Redis
- Apache
- Sass
- GitHub Actions
- Lando
- WordPress
- Timber
- Twig
- Advanced Custom Fields
- Yoast SEO
- jQuery
- Gulp
- webpack
- Babel
- Composer
- MariaDB
- Behat
- BackstopJS
- Nightwatch
- PHP
- AWS
- Node.js
- JavaScript
International Women's Forum
The International Women's Forum's public site: a custom Taoti theme on Composer-managed WordPress with ACF and Gravity Forms, built and deployed to Pantheon by GitHub Actions on every push.
- Sass
- GitHub Actions
- Pantheon
- Lando
- WordPress
- Advanced Custom Fields
- Yoast SEO
- Gulp
- webpack
- Babel
- PHP
AAMI
AAMI's member community on Bedrock WordPress and BuddyBoss, with a Timber theme and a homepage feed that blends curated stories with the live activity stream, cached in Redis and behind SAML single sign-on.
- MySQL
- Redis
- Apache
- Lando
- WordPress
- Timber
- Twig
- Advanced Custom Fields
- Yoast SEO
- Gulp
- webpack
- PHP
- Node.js
APTA
The American Physical Therapy Association's site on Bedrock WordPress, with Composer-managed plugins, ACF Pro, Redis object caching and Taoti's security scanner, held to one security and version baseline.
- Redis
- Advanced Custom Fields
- Yoast SEO
OCAD University
Development on the public Drupal site for OCAD University, Canada's largest university of art and design.
- Drupal
02 · Stack index
What the work actually runs on
Counted from the 77 public projects on this site, not from a list of things I've heard of.
-
WordPress 43 projects
TruBridge, Election Center, International Women's Forum and 40 more
-
Pantheon 37 projects
International Women's Forum, SageLife, UMBC Home Visiting Training and 34 more
-
Bootstrap 26 projects
Sequoia Capital, SageLife, TAK.gov and 23 more
-
PHP 20 projects
ZEFR, International Women's Forum, AAMI and 17 more
-
Lando 12 projects
AAMI, PTC Therapeutics, UMBC Home Visiting Training and 9 more
-
AWS 11 projects
SageLife, TAK.gov, i6tix and 8 more
-
React 11 projects
GameKal, PawDings, Cascade Space and 8 more
-
TypeScript 9 projects
GameKal, Fisher of Fire, PawDings and 6 more
-
MySQL 8 projects
ZEFR, AAMI, Sequoia Capital and 5 more
-
GitLab CI 7 projects
UMBC Home Visiting Training, The Children’s Inn at NIH, ComEd · Powering Lives and 4 more
-
HTML and SCSS 7 projects
SageLife, i6tix, Rehab.com and 4 more
-
Drupal 8 5 projects
UMBC Home Visiting Training, UNISYS, NCIT and 2 more
03 · Writing
All Writing →Notes from the work
- Two names for one temp folder 537 passes on a Mac, 538 in Linux. One temp folder with two names, and a one-line fix.
- The AI that ate my file handles A Mac said it was out of open files. The cause was the coding agent, and three commands proved it.
- Locked out by my own fortress GameKal's Home page went from about 20 seconds to 1.8 by serving a public catalog as files instead of guarding every read.
- Measure before you restyle A redesign made the portfolio's Work page 653 KB of HTML. Measuring it found one decoration responsible for 37% of that, and one change cut the page by 29%.
04 · Now
Full Resume →Current engagements
Ready to work
Nomadic Digital LLC
Owner · January 2016 – Present
Web services at every level of a software team: hands-on build, solutions engineering, architecture and engineering leadership. Clients bring me in at the level they need, and I move between levels as the work does.
6 active clients · 3 of 4 levels in use today
05 · Contact