What I've built
A working timeline of the things I built and led directly, and the things I had enough technical influence on that they wouldn't exist, or wouldn't look the way they do, without the work. Read it top to bottom for the what, the why, and the impact of each. Almost none of it was solo, so I've named the people I built it with.
225k+stars across projects I created or led
Every browserships specs I co-authored
25 yearsbuilding software, across Google, AOL and beyond
20M+developers have read my work
2010 - 2011
What
I worked inside the jQuery project at its peak: on the bug triage team, the site and API documentation teams, and the core effort, triaging issues, writing docs, posting community updates on the official jQuery blog, and helping launch the jQuery Standards Team.
Why
jQuery ran on a majority of the web. Keeping its bugs, docs, and community healthy kept millions of sites working, and there was no playbook for open source at that scale yet.
Impact
A front-row education in large-scale open source that shaped everything I did after. I also built jQuery UI Bootstrap, a theme that fixed the CSS collisions between Twitter Bootstrap and jQuery UI.
with Dave Methvin, Yehuda Katz, Paul Irish
2011 - 2013
What
A module pattern I helped author and popularize that let a single JavaScript file work everywhere at once, as an AMD module, a CommonJS module, or a plain browser global.
Why
The module world was split three ways between AMD, CommonJS, and globals, and library authors had no clean way to ship one file that ran in all of them.
Impact
UMD became the default boilerplate that libraries wrapped their code in for years, so one build ran in any environment. It held the ecosystem together until native ES modules arrived.
2011
What
The same to-do app implemented across every major JavaScript framework, one honest, side-by-side reference for comparing them.
Why
The MV* framework explosion left developers with no fair way to compare Backbone vs Angular vs Ember vs the next thing. Everyone was picking blind.
Impact
It standardized the "todo app" as how the industry teaches and compares frameworks, and it has held that role for over a decade, first for framework authors and programming communities, and now for AI labs building coding models. Its code even became the core workload for Apple's Speedometer browser benchmark, so a teaching project ended up shaping how browser engines get tuned.
28.9k starswith Sindre Sorhus, Pascal Hartig, Stephen Sawchuk, Sam Saccone
2012
What
One of the web's first big scaffolding tools. It put a generator layer (the yo command) on top of the modern front-end stack, pulling in Grunt for builds and Bower for packages, so a best-practice project was one command away.
Why
Starting a modern front-end project meant hand-wiring a dozen tools. Most people either got it wrong or gave up.
Impact
We built a large community around it, and its individual pieces, especially the generator model, became the DNA of nearly every framework CLI that followed, from Create React App to Angular CLI to Nuxt.
10.1k starswith Paul Irish, Eric Bidelman, Sindre Sorhus
2013 - 2014
What
An opinionated, modern starting point for multi-device sites, build tooling, performance defaults, and a responsive template in the box. Around the same time I built Basket.js, an early script loader that cached files in localStorage to speed up repeat visits.
Why
The default way to start a site was still hand-rolled boilerplate like HTML5 Boilerplate. People deserved a more modern foundation than that.
Impact
Gave teams a faster, better-defaulted place to begin, and pushed the idea that good performance defaults should ship in the box.
18.3k stars
2015
What
I played a big role in Material Design's launch on the web. I wrote, co-authored, and led Material Design Lite, the first implementation of Material Design in plain, framework-free CSS, HTML, and JavaScript, and I worked directly with the Material Design team to figure out desktop specifications for a range of UX elements. Alongside it I worked with the Polymer team on Polymer and Web Components, and on the Polymer paper-elements library of Material components.
Why
Material Design existed, but using it meant pulling in a heavy framework, and the desktop side of the spec was thin. The web needed a vanilla option and real desktop guidance.
Impact
Material Design Lite grew past 32,000 stars and its ideas graduated into Material Components for the Web. The Polymer paper elements became part of the official set of Material implementations.
32.2k starswith Surma, Jonathan Garbee, Sergio Gomes, the Material Design & Polymer teams
2015 - 2016
What
I started a team around service-worker libraries. We began with sw-precache and sw-toolbox and turned that work into Workbox. In parallel we built our own web push messaging solution.
Why
Service workers unlocked offline, caching, and push on the web, but writing them by hand was low-level and easy to get dangerously wrong.
Impact
Workbox became the canonical service-worker library on the internet, still the default anytime someone builds on service workers, and something we kept investing in for years. Our push messaging work ultimately fed into FCM, Firebase's push notifications for the web.
Workbox 13k starswith Jeff Posnick, Matt Gaunt, Philip Walton
2016
What
A founding member of the team that built Lighthouse, Chrome's automated tool for auditing performance, accessibility, best practices, and SEO. Paul Lewis and Paul Irish laid the key groundwork.
Why
Developers had no consistent measuring stick for quality and user experience, the thing I'd wished for back when I was manually benchmarking my own projects.
Impact
It became the gold standard for web quality, runs tens of millions of times a month, and powers both PageSpeed Insights and the DevTools audits panel.
with Paul Lewis, Paul Irish
2017
What
I played a large role in the PWA rollout, working hands-on with many top sites and brands, Twitter, Pinterest, and others, and collaborating with React, Angular, Nuxt, Next.js, and Webpack to make sure PWA support was first-class inside the frameworks themselves.
Why
The mobile web was slow and unreliable, and users on flaky networks were being pushed toward native apps. PWAs promised app-like speed, offline, and installability on the open web.
Impact
Twitter Lite cut time-to-interactive by 50% on slow devices. Pinterest's PWA drove a 44% lift in ad revenue and 40% more time on site. The patterns fed straight back into the frameworks and Chrome's tooling.
with the Twitter and Pinterest teams
2016 - 2018
What
A run of web-performance tooling and practices. I introduced performance budgets to the ecosystem and helped land
budget support in webpack, then built two prefetching libraries: Quicklink (prefetches in-viewport links during the browser's idle time) and
Guess.js (reads analytics at build time to predict and prefetch the next page). My
Critical tool for inlining above-the-fold CSS came out of this same push.
Why
Performance regressions crept back in silently with every release, and the next page could feel instant if prefetching were easy and safe. Teams needed both guardrails and runtime tools, not just good intentions.
Impact
Performance budgets became standard practice, wired into build pipelines like webpack so a regression can fail the build. Quicklink and Guess.js became the direct blueprint for the browser's Speculation Rules API, Chromium cited Quicklink as prior art when it built the idea into the platform.
Quicklink 11.3k, Guess.js 7.1k, Critical 10.3kwith Minko Gechev, Katie Hempenius, Kyle Mathews
2018
What
I co-authored large parts of Speedometer 2, the cross-vendor benchmark for real-world web-app responsiveness, built with Apple's WebKit team, and later mentored the work on Speedometer 3.
Why
The industry needed one shared, realistic way to measure browser speed on modern framework workloads, not synthetic micro-benchmarks.
Impact
It has been enormously influential in how the industry and browsers approach performance and speed up the internet. Apple cited Speedometer when it marketed the M1 chip, and every browser and silicon vendor now optimizes against it.
with Mathias Bynens, Ryosuke Niwa
2019
What
I advocated for years for lazy-loading images and iframes without JavaScript, helped ship loading="lazy" in Chrome, and tuned the thresholds to match what developers expected from JS libraries.
Why
Every site was shipping extra JavaScript to do something the browser should just do natively.
Impact
WordPress made it the default. It now appears on roughly a quarter of mobile pages, collectively saving users an enormous amount of loading and data.
with Simon Pieters, Yoav Weiss, Mathias Bynens
2020
What
I played a heavy role over many years in standardizing and shaping Core Web Vitals, the user-centric performance metrics: Largest Contentful Paint, Cumulative Layout Shift, and later Interaction to Next Paint.
Why
"Does it load fast for a real user?" had no shared, honest definition. Everyone measured performance differently and argued past each other.
Impact
Core Web Vitals became a Google Search ranking signal and the industry's shared language for performance. Site speed went from a niche developer concern to a boardroom one.
with Annie Sullivan, Rick Byers, Bryan McQuade, Ilya Grigorik
2021
What
Through Chrome Aurora, my team shipped performance directly into the frameworks developers already use: the revamped next/image in Next.js (with Vercel), the Angular image directive, and font optimization for Nuxt, among many others.
Why
Asking millions of individual developers to become performance experts will never scale. The leverage is to fix it once, at the framework level, so everyone downstream gets it for free.
Impact
Real, measured wins: the Angular image directive cut Land's End's median LCP from 12s to 3s, and the Next.js image work improved partner LCP by up to 60%. Good performance became a side effect of building for the web.
with Shubhie Panicker, Kara Erickson, Houssein Djirdeh, Alex Castle, Gerald Monaco
2021 - 2022
WordPress & CMS performance
Galaxy
What
The other half of that work, through the Galaxy effort: engineers contributing directly to WordPress, and consulting with Wix and Elementor, to improve Core Web Vitals across the CMS ecosystem.
Why
A huge share of the web runs on a handful of CMSs. Improving them lifts millions of sites at once, including all the ones whose owners will never read a performance guide.
Impact
CMS stacks got measurably faster at the source. WordPress alone, which powers a large fraction of the web, shipped defaults like native lazy-loading and fetchpriority on its main image, moving Core Web Vitals for millions of sites in a single release.
2022
What
I had heavy input into Priority Hints and co-authored the specification, as a named editor, that became the fetchpriority attribute, giving developers the ability to steer the priority of individual network requests.
Why
Developers could preload a resource, but they couldn't tell the browser which resources actually mattered most. There was no steering wheel.
Impact
It became the de facto way people steer loading on top of things like preload, and shipped in every major browser. Google Flights cut LCP from 2.6s to 1.9s with it; WordPress later turned it on by default.
with Pat Meenan, Yoav Weiss
2023
What
Quicklink and Guess.js proved that idle-time, viewport-aware, predictive prefetching worked. I then consulted heavily with the team bringing those ideas into the browser, providing regular input as they became the Speculation Rules API for prefetch and prerender.
Why
Predictive prefetching worked beautifully in libraries, but it belonged in the platform, where it could be safe, native, and universal.
Impact
It shipped as a web standard in Chrome and is now used in production by Google Search, WordPress, and Cloudflare for near-instant navigations. Chromium cited Quicklink as prior art.
2012 - 2024
Technical lead, then org leader
What
Years of technical input and direction into Chrome DevTools, shaping panels like Device Mode, Application, Memory, Animations, and Performance, and later becoming the overall engineering leader for Chrome Developer Experience: DevTools, Chrome Headless,
Chrome for Testing,
Puppeteer, and a number of other tools.
Why
DevTools is where more than 40 million developers actually debug the web. It has to support every new platform feature from day one, or developers can't adopt them.
Impact
I led a large organization behind tools used by millions of developers and billions of end users, and drove roughly $350M of value through the work. Puppeteer alone is at 95k+ stars.
2019 - 2024
What
I led two evolutions of DevTools. First, the org's shift into post-load performance: user-journey and user-flow analysis, the Core Web Vitals Chrome extension, the Recorder for capturing and replaying flows, and scripting. Then the push into a human and AI future, DevTools for humans (AI assistance powered by Gemini) and DevTools for agents, both tech-led by Yang Guo and Mathias Bynens.
Why
Debugging used to stop at page load, but the problems that actually hurt users, slow interactions, layout shifts, broken journeys, all happen after it. And as AI arrived, both people and agents needed DevTools to become an intelligent collaborator, not just an inspector.
Impact
DevTools moved from a load-time inspector to a tool for whole user journeys and Core Web Vitals, and then into AI-assisted debugging for humans and a surface that agents can drive, for a tool more than 40 million developers rely on.
with Yang Guo, Mathias Bynens
2023 - 2024
What
A set of privacy-first, fully client-side AI web apps: ChattyUI (LLMs running in the browser via WebGPU),
bg-remove (image background removal via Transformers.js), and
Say (Whisper speech-to-text in the browser).
Why
To prove that serious AI can run entirely on-device, with no server and no data ever leaving your machine.
Impact
Reference implementations that show developers what in-browser AI with WebGPU and WebAssembly can actually do. I've also long maintained free resources like
patterns.dev, read by over 5 million people.
2023 - 2025
What
I contributed to the developer-facing journey for Google's Gemini models, from the early multimodal work in Gemini through coding, partnering with Google DeepMind to make Gemini stronger at full-stack web development, and supporting launches like the Gemini CLI and Nano Banana image generation.
Why
State-of-the-art AI only reaches developers if it fits naturally into how they actually build, in their editor, their terminal, their real workflow, not just a demo.
Impact
Helped put Gemini's capabilities into the hands of millions of developers through clear docs, hands-on demos, and reference apps, and helped define what agentic AI means for the people who build software.
with the Google DeepMind and Gemini teams
2025 - 2026
Gemini Enterprise Agent Platform
Director, Google Cloud AI
What
As a Director at Google Cloud AI, I led developer experience and technical evangelism for Google's enterprise agent stack, the Gemini Enterprise Agent Platform, alongside Agent CLI, Agent Studio, the Agent Development Kit (ADK), Gemini, and Vertex AI.
Why
Enterprises need more than a model endpoint to trust AI agents in production. They need a real platform, and a real developer experience, to build, deploy, evaluate, and govern them.
Impact
The organization hit its annual developer-growth goal, roughly 2x, in under six months.
with the Google Cloud AI team
2026
What
An open collection of production-grade "skills" that make AI coding agents work with senior-engineer discipline, tests, review, verification, across the whole development lifecycle. Companion site at
skills.addy.ie.
Why
Coding agents generate fast but skip the discipline that makes software trustworthy. The skill is no longer writing the code; it's the constraints you wrap around the machine.
Impact
It became the most popular independent Agent Skills collection on GitHub, at around 90,000 stars, and counting.
90k stars