Gatsby / Social commerce
Turning social influence into owned customer value.
As Gatsby’s co-founding CTO and sole original engineer, I took the product from its first interaction model to a deployed commercial platform spanning the storefront, shopper experience, merchant tools, APIs, data, integrations, and operations.
- Role
- Co-founding CTO
- Ownership
- Sole initial engineer & architect
- Company result
- Acquired by Klaviyo, 2025
The situation
Ecommerce had the transaction. Social had the relationship.
Brands could offer discounts, and shoppers could share or follow, but those interactions were disconnected. Merchants had little visibility into who was advocating for them, what influence that person carried, or whether a social promotion produced anything useful after the click.
The product opportunity was to make social participation part of the commerce experience: simple for a shopper, configurable for a merchant, and measurable enough to support a continuing customer relationship.
What made it interesting
One small button crossed a lot of boundaries.
The visible interaction was deliberately small. Behind it sat storefront embedding, third-party authentication, campaign rules, identity and activity data, promotion delivery, merchant reporting, billing, and production operations.
Every social network behaved differently. Merchant sites varied. OAuth callbacks had to preserve shopper and campaign context. The system had to connect a person, a brand, an action, and a result without making that complexity visible to either side.
What I built
The complete original product surface.
- 01
Storefront experience
A configurable JavaScript call-to-action that merchants could install without rebuilding their storefront.
- 02
Shopper workflow
Branded social actions across Facebook, Instagram, and Twitter, connected to discounts and raffles.
- 03
Merchant control plane
A Vue portal for onboarding, campaigns, design, display rules, installation, analytics, and data export.
- 04
Platform services
Authentication, identity and activity records, generated assets, tracked links, payments, and deployments.
Architecture
A product flow, then a service boundary.
Gatsby began as a working monolith. As merchant configuration, shopper traffic, reporting, and link attribution became distinct operational concerns, I separated them into focused, independently deployable applications.
Customer surface
Platform core
Connected systems
Why this approach
Earn the architecture through the product.
I did not begin by designing a distributed platform. I began by making the customer interaction work, then separated the system where product scope and production operations created real boundaries.
- 2015–16
Find the product
Prove the interaction model in a single Node application: install a branded CTA, connect a shopper’s social identity, record an action, and return a promotion.
- 2016–17
Operate and broaden
Support live merchants, multiple brands and channels, generated client assets, activity tracking, email flows, raffles, and an increasingly configurable shopper experience.
- 2017
Separate the platform
Move from the working monolith to independently deployable API, merchant portal, marketing, and short-link services as the product surface and operational needs grew.
- 2025
Strategic outcome
After years of continued product evolution under a later team, Klaviyo acquired Gatsby to connect social engagement with owned customer relationships.
The result
The original product became durable company infrastructure.
Gatsby continued after my 2017 resignation, expanding primarily through integrations with the marketing platforms around it. The core idea endured: translate social behavior into customer data and action a brand could own.
The product became a long-running Shopify application with strong marketplace reviews and documented customer outcomes. In 2025, Klaviyo acquired Gatsby to add social context to its customer platform. My founder options paid out in the acquisition.
Technology
Tools used to solve the situation.
- Application
- JavaScript / Node.js / Express / Vue 2 / Vuex
- Interface
- Pug / Jade / Less / generated browser scripts
- Data
- MongoDB / Mongoose / Redis
- Identity
- Passport / OAuth / JWT / bcrypt
- Commerce
- Shopify APIs / Stripe
- Delivery
- Buddy / Jenkins / PM2 / SSH deployments
Case details are based on a private audit of eight historical repositories, their Git histories, and public product and acquisition records. Later third-party integrations are not presented as my implementation work.