HomeCapabilities

What I work on, and what I’ve built.

Three lines of work: Oracle NetSuite integrations, audits for apps built with AI tools, and technical SEO. Behind them sit fifteen years of engineering, work I've owned end to end for a NetSuite business, and a product I build and run myself.

(02)Skills

From the products I've built

  1. 01Product development

    • Owning work end to end: priorities set with the business, then scoping, building, testing, deploying and measuring the result
    • Taking a product from idea to launch, then running and growing it
    • Designing for field workers: technicians and sales reps on weak or no signal
    • Product decisions from analytics data, release notes and changelogs
    • Admin and internal tools, so a small team can run the product
    • Privacy by design: data people upload is processed in their browser, not stored
  2. 02ERP & commerce

    • Oracle NetSuite: SuiteScript, SuiteQL, RESTlets, SuiteTalk REST
    • NetSuite records from the field: work orders, assets, site visits, custom fields and records
    • Node.js middleware (Fastify, Sequelize) between web apps and the ERP
    • Showrooms and quote flows on live ERP inventory
    • Shopify and Shopify Plus, including headless storefronts
  3. 03Offline-first field apps

    • Progressive web apps that keep working with no signal: IndexedDB (Dexie) storage
    • Background sync with retry, backoff and safeguards, so work that hasn’t uploaded isn’t lost
    • Photos uploaded straight from the browser to S3
    • Service-worker updates and iOS install flows
    • Barcode scanning in the browser (WebAssembly), calendars and charts
  4. 04Front end & 3D

    • Angular with TypeScript, RxJS and PrimeNG, including migrations
    • React and Next.js (SSR, ISR, API routes), including thousands of statically built pages
    • Tailwind CSS and SCSS, mobile-first layouts
    • Site search with relevance ranking, synonyms, typo tolerance and capacity matching ("5000 lb" finds units rated at least that much)
    • Three.js, WebGL shaders and a physics-based riding simulator
  5. 05WordPress

    • Custom PHP themes: Advanced Custom Fields, custom post types and taxonomies, WooCommerce
    • Custom Gutenberg blocks rendered on the server, so search engines and visitors without JavaScript see the content
    • Interactive tools as blocks, such as fuel-cost and cost-of-ownership calculators, with unit tests
    • Webpack and @wordpress/scripts builds; WP Engine hosting with Bitbucket Pipelines deploys to production, staging and dev
  6. 06Back end & cloud

    • REST APIs in Node.js (Fastify, Sequelize)
    • Sign-in: OIDC single sign-on (OneLogin), AWS Cognito
    • AWS Amplify, S3 and Route 53; hosting cost reviews, such as moving a media library to S3 to drop to a smaller plan
    • PostgreSQL schemas and migrations
    • Image pipelines with sharp and local ML models: photo scoring (CLIP), cropping, background removal
  7. 07Maps & geospatial

    • Interactive maps with Mapbox GL and custom vector tilesets
    • OpenStreetMap data processing and route building
    • Elevation, routing and ride-time planning
    • GPX and FIT file analysis in the browser
  8. 08Data engineering

    • Pipelines that turn public records into clean datasets (crash, Census and federal data)
    • Live feeds from government APIs: weather, road closures, incidents, with caching
    • Honest statistics: counts with their sources and limits stated
  9. 09Search & growth

    • Technical SEO: schema.org structured data (Product, ItemList, BreadcrumbList, FAQPage, Service), canonicals, XML and image sitemaps, noindex rules
    • URL migrations with 301 redirect maps
    • Titles and headings built from live inventory data
    • Pages built from data that answer what people search, with build-time quality checks
    • llms.txt and crawler access for AI assistants
    • Search Console and Semrush: site audits and keyword research
  10. 10Analytics & lead tracking

    • PostHog: custom events, feature flags, HogQL queries, session recordings, and a same-origin proxy so ad blockers don’t hide visits
    • GA4 key events, Google Tag Manager and Microsoft Clarity
    • Cleaning the data: filtering bot, foreign and internal traffic, and finding gaps in tracking history
    • Lead capture: short forms, sticky call and quote bars, and funnel tracking that sends no personal data to analytics
  11. 11Quality & accessibility

    • Tests: Jasmine/Karma, Vitest with Testing Library, PHPUnit with Brain Monkey, Playwright layout checks
    • ESLint and PHPCS
    • ADA and WCAG 2.2 AA audits, and fixes in code: keyboard access, ARIA, headings, contrast, forms, reduced motion
    • Performance: lazy loading, responsive images, smaller bundles, Lighthouse audits

(03)Also available

Usually for existing clients, or alongside the services above

WorkWhat it covers
AI integrationAI added to the tools you already run: documents and emails read into NetSuite records, search over your own data, drafts for staff to check, and image processing.
Product developmentTaking a new product from idea to launch: scoping, prototype, build, analytics, and the admin tools to run it.
Custom web applicationsReact, Next.js and Angular applications, including migrations off legacy front ends.
Shopify & headless commerceShopify and Shopify Plus stores, or Shopify behind a custom, fast front end.
WordPressCustom themes and server-rendered Gutenberg blocks, interactive tools like cost calculators, and staged deploys (WP Engine, Bitbucket Pipelines).
Accessibility (ADA / WCAG)Audits and fixes to WCAG 2.2 AA, the standard ADA website claims are usually measured against.
Maps & data productsInteractive maps, custom tilesets and pipelines that turn public or internal data into something people can use.
Offline-first field appsApps for technicians and sales reps that keep working with no signal and sync work orders, visits and photos to NetSuite when they can.
Site searchSearch over a catalog or inventory with relevance ranking, synonyms, typo tolerance and spec matching, like "5000 lb" finding every unit rated at least that much.
PerformanceCore Web Vitals, bundle size, caching and image pipelines.
Analytics & lead trackingPostHog, GA4, Tag Manager and Clarity set up to answer real questions, with bot and junk traffic filtered out and lead forms tracked without sending personal data.
Hosting & cloud costsAWS (Amplify, S3, Route 53) and WP Engine setups, and reviews of what hosting costs and where it can come down.
MaintenanceDependency upgrades, security patches and monitoring for sites I built or inherit.

(Next step)

Is NetSuite holding you back? Let’s fix it.

Start with a fixed-price integration audit: a written plan showing what’s broken, what will break next, and what to fix first.