maye.one

Grant Maye.

Software engineering.
Marketing, connected.

I build web applications and marketing systems—from campaign pages and conversion events to customer workflows and reporting.

Selected work

Client work & independent products

Five different problems.
Five working builds.

Commerce, measurement, publishing, planning, and operations. Built as local demos with fictional data; explore the actual interfaces and the engineering behind them.

Forme lighting storefront with product illustrations, finish options, and the fictional collection.Forme
Ecommerce

Forme

A product-first lighting store with interactive finish selection, checkout, inventory, and order management connected behind the scenes.

TypeScript · Node.js · SQLite

Inside Forme
  • Product variants, a persistent cart, coupons, and stock checks.
  • Checkout, fulfillment, refunds, and an order-management studio.
  • Consent-aware ecommerce events and a local payment simulator.

Local commerce demo. Products are fictional; payments are simulated and no money moves.

Signalroom campaign measurement dashboard with a sample event stream and data-quality status.Signalroom
Marketing operations

Signalroom

A measurement workbench following campaign activity from consent and event validation through CRM mapping and delivery recovery.

TypeScript · Node.js · SQLite · Python

Inside Signalroom
  • Consent-aware events and campaign attribution.
  • Event quarantine, repair, replay, and duplicate protection.
  • CRM field mapping, a local delivery queue, and Python reporting.

Local demo with fictional campaign data. CRM delivery uses a simulator.

Folio Press magazine front page with a bold masthead, original story illustrations, and a subscription section.Folio Press
Publishing & audience

Folio Press

An independent magazine with a story-led front page, focused article reader, and editorial studio for review, scheduling, and audience workflows.

TypeScript · Node.js · SQLite · Server-rendered HTML

Inside Folio Press
  • Draft, review, schedule, publish, and revision history.
  • Search, metadata, RSS feeds, and sitemaps.
  • Consented subscriptions and local newsletter previews.

Local publication demo with fictional articles and subscribers. Email previews stay in a local outbox.

Shiftline fictional workforce planner with a staffing timeline, coverage chart, and demand assumptions.Shiftline
Operations & forecasting

Shiftline

A planning workspace that turns campaign demand into staffing scenarios, with clear coverage gaps and an inspectable workload model.

TypeScript · Node.js · SQLite · Python

Inside Shiftline
  • Demand CSV import and transparent forecasting assumptions.
  • Availability checks and a keyboard-operable staffing timeline.
  • Plan comparison, revision recovery, and matching Python calculations.

Local demo with fictional people and demand. No workforce or payroll service is connected.

Engineering for
the whole journey.

A campaign needs a destination. A conversion needs context. A customer record needs to reach the right team.

I work across those connections—from the application and its tracking to the workflows and reporting behind it.

  1. Web & product engineering

    Web applications, reusable campaign pages, content workflows, and lead-generation forms that marketing teams can manage and build on.

    Next.js · TypeScript · Python · PostgreSQL · CMS integrations

  2. Acquisition & attribution

    Connect advertising clicks to website actions and lead sources. Preserve campaign context through forms, redirects, domains, and CRM handoffs.

    Google Ads · Meta Ads · GA4 · Google Tag Manager · UTMs

  3. Product analytics & experimentation

    Instrument product actions, investigate drop-off, implement A/B tests, and improve signup, checkout, and lead-generation flows.

    Mixpanel · Amplitude · GA4 · A/B testing · Funnel analysis

  4. CRM & customer lifecycle

    Connect website activity with CRM and email workflows. Map fields, capture lead sources, route leads, prevent duplicates, and synchronize records.

    Salesforce · HubSpot · Klaviyo · Lead routing · Record sync

  5. Data & reporting

    Bring analytics and CRM data together. Investigate discrepancies, build useful dashboards, clean datasets, and automate repeatable reporting.

    BigQuery · Looker Studio · PostgreSQL · SQL · Python

  6. Technical SEO & performance

    Make sites easier to find and faster to use. Implement metadata and structured data, resolve indexing issues, and handle SEO during migrations.

    Structured data · Sitemaps · Canonicals · Redirects · Page speed

  7. Integrations & automation

    Connect marketing platforms and the work between them: imports, exports, notifications, record synchronization, and handoffs between teams.

    APIs · Webhooks · Zapier · Make · Python

  8. Tracking quality & consent

    Implement browser and server-side measurement. Validate events, debug missing or duplicate conversions, respect consent, and keep sensitive form content out of analytics.

    Server-side tagging · Conversion APIs · Data layers · Consent

See one of those connections in action.

Explore the signal lab

Follow the signal.

A campaign visit becomes an event, then a useful CRM record. Try the decisions in between.

Fictional sample · Browser-only simulation. No GA4 tags, Salesforce connection, or real visitor tracking.

Choose a source, then try sending with consent off and on.

  1. 01 Consent
  2. 02 Event
  3. 03 CRM mapping

Browser event

No sample event yet.

CRM field mapping

No sample record yet.
Where SQL and Python fit

Use SQL to connect sources with downstream outcomes; use Python to validate, normalize, and automate the handoff. These are illustrative examples, not services running on this page.

-- PostgreSQL: aggregate consented sample events
SELECT utm_source, COUNT(*) AS leads
FROM lead_events
WHERE analytics_consent = TRUE
GROUP BY utm_source;
# Python: allowlist fields before a handoff
allowed = ("event_id", "utm_source", "utm_campaign")
payload = {key: event[key] for key in allowed}
# Never forward form contents to analytics.

Bring the interesting
problem.

A website to build. A tracking gap to untangle. A marketing workflow that needs to connect.

Or connect on LinkedIn

Résumé

Project screenshot

Steward acquisition workspace showing a fictional business, evidence review, and planning information.

Find your way

Signal path

Connect IN on the left to OUT on the right. Rotate each copper tile with a tap, click, or Enter. No timer. No rush.

IN
OUT

Rotate a tile to begin.

Say hello.

Grant’s message assistant · This guided form emails your note to Grant through Resend. It isn’t a live AI chat.

Checking message delivery availability…

What would you like to talk about?

Step 1 of 4. Your draft stays on this page until you send.

Prefer LinkedIn?