Portfolio
Senior web developer, committed to improving the user experience by improving web performance.
More than 28 years web experience, worked as a developer,
Tech Lead, CTO, and Performance Architect in media, nonprofit,
SaaS, finance, agency, and global e-commerce environments.
I help organizations make complex, high-traffic websites faster, more stable, and more effective.
Selected Work
The goal is not a green dashboard.
The goal is a better user experience.
I supported more than 400 international e-commerce
websites, spanning 20+ brands across approximately
120 countries, helping engineering teams understand,
measure, and improve frontend performance.
My work included Synthetic Monitoring, Real User Monitoring (RUM),
Core Web Vitals, performance audits, performance budgets, template
optimization, media delivery, frontend architecture, and performance education.
I conducted approximately 60–80 brand and regional
performance audits, investigated issues using RUM,
Synthetic Monitoring, Chrome DevTools, and WebPageTest, and worked
with engineering, project management, and content teams to establish
and reinforce performance-budget expectations.
The work often extended beyond individual pages or components.
Systemic improvements to templates, rendering architecture, caching,
media handling, and frontend practices could affect thousands of
pages and developers across the organization.
Performance advocacy works best when developers understand why
the change matters.
At People.com, I worked at the intersection of frontend engineering,
performance, architecture, and technical leadership.
The site served approximately 20–40 million page views per
month, providing a uniquely large environment in which to
investigate how frontend implementation decisions affected
real-world performance.
I helped introduce and promote performance-focused development
practices at a time when the web was rapidly evolving, including
the early adoption of techniques popularized by Steve Souders and
YSlow.
I also worked on initiatives involving CSS and JavaScript
optimization, image handling, jQuery adoption, responsive and
mobile experiences, and architectural improvements.
Beyond implementation, I served as a mentor and technical resource
for engineers across the broader Time Inc. web organization,
including properties such as Time.com, Entertainment Weekly, and
InStyle.
I regularly led or participated in lunch-and-learns and corporate
presentations covering emerging technologies, frontend practices,
and performance.
Good architecture isn't about using the most sophisticated tool.
It's about using the appropriate tool.
At Netbiscuits, I was responsible for creating a new company website
and, importantly, designing the engineering workflow behind it.
I selected WordPress to provide an accessible publishing system for
content teams while establishing a development and deployment process
using:
Node.js → Grunt → GitHub → DeployBot → Stage → Prod
The workflow handled asset optimization, minification, image
conversion, version control, deployment, and QA before production.
At AdvantiPro, where I served as CTO, that
responsibility expanded across the company's own web properties and
customer projects.
I was responsible for the technical direction and delivery practices
behind approximately:
My work included WordPress architecture, custom PHP development,
internal tools and automation, developer mentoring, technical
standards, and project delivery.
Several projects were effectively one-person engineering efforts,
requiring me to work across architecture, development, deployment,
and client communication.
The goal isn't to eliminate JavaScript.
It's to eliminate unnecessary JavaScript.
I don't believe every problem needs JavaScript. But of course, some do.
JavaScript enables experiences that simply aren't possible with
HTML and CSS alone.
But when the browser can already provide the behavior we need,
shipping JavaScript to recreate that behavior adds unnecessary work
for developers, reviewers, QA, build systems, users, and
browsers.
NoLoJS explores what happens when we start with the platform and add
JavaScript only when it genuinely provides value.
- Semantic HTML
- Native browser capabilities
- CSS-driven interaction where appropriate
- Progressive enhancement
- Minimal dependencies
- JavaScript only where it provides meaningful additional capability
Sometimes the best way to understand a problem is to investigate it.
Not every site I investigate is one I have access to modify.
Sometimes the source code isn't available.
Sometimes the infrastructure isn't under my control.
Sometimes the only way to explore a hypothesis is to work from the
outside in.
These investigations use browser tooling, performance measurements,
controlled modifications, and before-and-after comparisons to explore
what is actually happening inside the browser.
They are experiments, not claims of production changes.
A performance investigation examining the page's rendering behavior
and LCP candidate, using Chrome's Content Override capabilities to
test potential changes without modifying the production site.
Read Investigation
→
An exploration of how layout behavior can affect the browser's
rendering timeline and reported performance metrics.
The investigation uses controlled changes to isolate potential
causes and examine the resulting behavior.
Read Investigation
→
Wish.com
Investigating a High LCP
A controlled performance investigation into a high Largest
Contentful Paint, exploring potential causes and demonstrating how
targeted implementation changes can affect the resulting experience.
Read Investigation
→
Earlier Work
A few more things I've built
My career spans considerably more than the projects above.
Some additional work that helped shape how I approach frontend
engineering and architecture includes:
Mobile & Responsive Web
Mobile analytics interfaces, responsive applications, adaptive
experiences, and cross-device testing environments developed during
my work at Netbiscuits and elsewhere.
People.com
Additional work included tablet experiences, second-screen trivia,
gallery tooling, frontend asset optimization, and integration of
emerging frontend technologies.
WordPress
Custom themes, plugins, Gutenberg, BuddyPress, LearnDash, custom
PHP functionality, editorial workflows, and multisite environments.
Web Architecture
Responsive Web Design (RWD), server-side adaptation, frontend
performance, Search Engine Optimization (SEO), accessibility,
content management, deployment workflows, and web infrastructure.
Internal Tools & Automation
Custom PHP applications and automation designed to reduce repetitive
work and improve operational efficiency.
Speaking & Teaching
If I solve a problem once, that's useful.
If I can share that with others, that's far more valuable.
Teaching and knowledge-sharing have been a consistent part of my
career.
I've mentored developers throughout my career and have led
lunch-and-learns, internal presentations, technical workshops, and
corporate education initiatives at organizations including People.com
and AdvantiPro.
Additional knowledge-sharing includes:
What Ties It All Together
The technologies have changed considerably throughout my career.
The underlying questions haven't.
- What does the user actually need?
- What is the browser already capable of?
- Where is the real bottleneck?
- Can we fix the system instead of repeatedly fixing the symptom?
- How do we make the better behavior repeatable?
And perhaps most importantly:
Are we developing for the metric or the user?