Senior web developer · 20+ years · AI in the toolbox

Twenty years of instinct.
Now at AI speed.

AI has changed how developers work. It hasn't changed what they have to deliver. Two decades of building websites and web applications for agencies and brands who can't afford the project to go sideways — now with AI doing the heavy lifting and experience doing the steering.

Robust · Scalable · Secure

pair-session — ai + dgrigg
dgrigg New one. Harbour & Pine want Sage, their AI shopping assistant, answering stock and delivery questions. The data lives in their warehouse system: a nightly CSV export and a REST API.
ai Straightforward. I'll pull the API every 5 minutes, embed the JSON into the vector store and let Sage retrieve from it. Want me to scaffold the sync job?
dgrigg Not yet. Look at what customers actually ask: "is it in stock?" and "when will it get here?" Those are live numbers, not documents. Embed them and Sage answers from a snapshot that's already wrong.
ai Fair. Split it: embed the product copy and policies for search, and give Sage a tool call for live stock and delivery dates.
dgrigg Better. Now the constraints. Their API is rate-limited to 60 requests a minute, and Black Friday runs at 20× normal traffic.
ai Cache each SKU's stock for 60 seconds and queue anything over the limit. Add a circuit breaker in case their API goes down?
dgrigg Yes. And when it's down, Sage says "I can't check live stock right now." It never guesses. A wrong "in stock" costs them more than an honest "not sure".
ai Order lookups return names and addresses. Mask them before they reach the model?
dgrigg Mask them, and only let Sage look up the signed-in customer's own orders. Order numbers are guessable. Unscoped, that's a data leak with a chat window.
ai Plan: nightly catalogue embeddings · live stock tool with a 60s cache · circuit breaker and an honest fallback · PII masked, lookups scoped to the customer. Scaffolding now.
✓ 12 files · 41 tests passing · ready for review

The part nobody puts in the demo

The speed is real. So is the cliff.

Anyone can get a prototype running with AI in a weekend. I've watched it happen — and I've been the one who gets the phone call six weeks later.

The code looks right, reads right, and falls over the moment real users, real data and a real deadline show up. AI doesn't know what it doesn't know. Twenty years of projects is exactly that list.

Project momentum over time AI on its own climbs fast, then drops off a cliff around launch. AI with an experienced developer climbs just as fast and keeps climbing. WEEK 1 LAUNCH MONTH 6 MOMENTUM "A prototype in a weekend!" "Why is checkout broken on Safari?" "Nobody knows how this works." AI + 20 YEARS: STILL CLIMBING
Not to scale. Painfully accurate though.

Experience, amplified

Where the instinct came from.

Every project here taught me something you only learn by shipping it. AI is now part of how I work, so those lessons reach further, faster, across more of the stack — from JavaScript and PHP, Stripe and Shopify, to embeddings and AI search.

Energy Upgrade California
Supercell
PageProofer
Thermacell
Top10ERP AI Concierge

Energy Upgrade California

A five-language campaign site and custom SMS engine for California's energy-saving push.

100K text messages sent every week

  • Craft
  • PHP
  • Twilio
  • SMS

Supercell

Community sites and in-game news feeds for seven of the world's biggest mobile games.

100M+ daily players

  • Craft
  • PHP
  • JavaScript
  • 12+ languages

PageProofer

A visual feedback tool that drops into any website so teams can mark up pages in place.

600K pieces of feedback and counting

  • JavaScript
  • Laravel
  • Craft
  • Stripe

Thermacell

A site refresh and Shopify store built to sell, and to learn from every visit.

1M mosquitoes killed

  • Shopify
  • Klaviyo
  • Craft
  • Analytics

Top10ERP AI Concierge

An AI concierge that turns fifteen years of ERP research into grounded, cited shortlists.

950K+ businesses rely on the data

  • Laravel
  • pgvector
  • Claude
  • React

What I shipped

I built a custom Craft module on Twilio that sent 100,000 text messages every week, each one a yes/no energy challenge in the subscriber's own language. Every reply got its own animated GIF back, and each person's results were tracked so they could win some swag.

See the project →

What I shipped

With Firstborn, I helped scale Supercell's community sites and in-game news feeds to serve 100+ million players a day in over a dozen languages. I streamlined how every Craft install stayed in sync across environments, and open-sourced Migration Manager along the way.

See the project →

What I shipped

I built PageProofer from the ground up, every part of it, front end to back end. It runs inside other people's websites, so it has to look right and leave the host site alone wherever it lands. Thirteen years later it's still running, with thousands of people using it every day.

See the project →

What I shipped

For Thermacell's Shopify store I integrated Klaviyo and built advanced visitor and shopping analytics, so their marketing knew exactly who to talk to and when. All of it runs alongside the checkout, never in front of it, so tracking never gets in the way of a sale.

See the project →

What I shipped

Buyers describe their business in plain language and get a shortlist built from Top10ERP's verified product data. I built the concierge to know exactly where every answer came from, and cite it. If the data doesn't support it, it doesn't say it.

See the project →

How I actually use it

AI is the power tool.
I've built the house before.

I use AI every day. It makes me faster at the parts that were never the hard part — which leaves more time for the parts that are.

What I hand to AI

  • →Boilerplate, scaffolding and the fiftieth CRUD screen
  • →First drafts of tests, migrations and refactors
  • →The "how does this API work again" lookups
  • →Documentation nobody wants to write

What never leaves my desk

  • →Architecture that still makes sense in year three
  • →Security, and your client's data
  • →Knowing when to say "don't build that"
  • →Reading between the lines of the brief
  • →The call at 11pm the night before launch

Senior judgement × AI speed = what used to take a team

20+

Years shipping for the web

99+

Projects completed (I lost count)

100M+

Daily players on Supercell sites I worked on

950K+

Businesses relying on Top10ERP

40+

Country versions of Logitech

15k

Coffees consumed. Conservatively.

Big projects. Big stakes.

Getting it wrong was never an option.

Olympic deadlines. Hollywood launches. A hundred million players a day. I've spent twenty years on projects where the date doesn't move and the whole world is watching.

Now add AI. Same instincts, same standards, with the heavy lifting done in a fraction of the time. That means we can swing bigger, harder and faster than ever.

  1. 2009

    Paramount

    Beam me up

    The stakes
    A photo mosaic booth promoting a Hollywood blockbuster.
    The result
    A side project of mine, noticed by Hollywood and put to work for the Star Trek movie.
  2. 2012

    NBC

    The Olympic deadline

    The stakes
    Hundreds of media outlets, thousands of secure assets, and a July 27 opening ceremony that wasn't moving.
    The result
    Ready for the world's biggest sporting event.
  3. 2017

    Google

    Google who?

    The stakes
    Building alongside Google's own developers.
    The result
    YouTube came knocking with the next one.
  4. 2019

    Supercell

    Ready to rumble

    The stakes
    Seven games, 100+ million daily players, a dozen-plus languages.
    The result
    A streamlined Craft workflow, and open-sourced plugins including Migration Manager.
  5. 2021

    Energy Upgrade California

    Saving energy by text

    The stakes
    Five languages and a custom SMS engine for California's energy campaign.
    The result
    A few hundred thousand text messages sent.
  6. Next

    Your project

    Bigger. Harder. Faster.

    The stakes
    The one everyone else says is too big, too tight or too late.
    The result
    Twenty years of instincts, with AI doing the heavy lifting.
    Let's talk

Scroll →  ·  more on the projects page

Every project is in a different situation

Which one sounds like yours?

The situation

More work than your team can handle. Deadlines slipping. You need a senior developer who can parachute in, understand the project fast, and deliver — without hand-holding, client drama, or cutting corners.

Where AI + experience comes in

AI gets me up to speed on an unfamiliar codebase in hours, not days. Experience means I know which of its suggestions to ignore.

White-label. No client poaching. Just clean work, on time.

The situation

Years of hard-won knowledge buried in spreadsheets, scattered docs, and the heads of a few key people. You need it answering questions and automating the repetitive work.

Where AI + experience comes in

A custom AI tool built on your own data — grounded, private, and actually accurate. Not a chatbot that makes things up.

Built Laravel-first, running lean. No mystery infrastructure bill.

The situation

Someone vibe-coded a prototype and it worked well enough that people are now depending on it. Nobody's quite sure how it works, and it's starting to creak.

Where AI + experience comes in

I untangle it, keep what's good, and rebuild what isn't — so it can survive real users and a second developer.

I've been untangling messes other people left behind for twenty years. This is just a newer kind.

The situation

Content scattered across legacy systems, frustrated editors, and a setup that can't handle multiple languages or traffic spikes.

Where AI + experience comes in

A clean, structured Craft CMS build — with AI speeding up the migration grunt work so the budget goes where it matters.

Editors love it. Developers don't have to babysit it.

Case study · Top10ERP AI Concierge

Fifteen years of data. Finally, answers instead of homework.

I helped rebuild Top10ERP in 2021 and have maintained it ever since — so when it needed to get smarter, I already knew the data inside and out. That history is the whole trick.

Buyers now describe their business in plain language and get a grounded shortlist, built from Top10ERP's verified product data. No wading through comparison tables. No invented features.

Laravel · PostgreSQL + pgvector · Claude · Inertia + React

Sitting on data like this?

We're a 200-person food manufacturer, multi-plant. Need lot traceability and a way off QuickBooks.

Three systems fit a multi-plant food manufacturer your size, each with native lot traceability and a documented QuickBooks migration path. Here's how they compare on the requirements you mentioned…

Source: Product data Source: Industry fit Source: Migration notes

Every answer grounded in real data. If it isn't there, it isn't said.

Who have I worked with?

Brands that couldn't afford to get it wrong.

Seagrams
Youtube logo
Google
New york lottery
Pepsi
Paramount
Standford
Logitech
State Farm
Jim beam
Ritz Carlton
Sorel
Chobani
Hitachi
Huggies
Supercell
Lego
Hp
Sam Najjar

We hired Derrick on contract to complete a web application project for one of our clients. Timelines were extremely tight, but Derrick was always calm under pressure and came through for us in a huge way. His attention to detail, flawless execution, and depth of knowledge in front- and back-end web development are only a few of many of Derrick's strengths.

Sam Najjar · The Marketing Store

Deploys on short notice. Batteries not included, coffee is.

Just tell me where the repo is.

If you made it this far, you probably have a project worth talking about. Tight deadline, tricky problem, a stakeholder asking why it isn't done — that's where I do my best work.