SaaS Platform
Told
The context
Told is a B2B SaaS for product teams who need to talk to their users without bothering engineering. Drop one script on your site and you can ship in-app surveys, product tours, mobile feedback, and email follow-ups — fully no-code, fully measurable.
Built from scratch and shipped to 600+ companies, including Royal Canin, Axeptio, Inqom (by Visma), and WorkLife.
My role
End-to-end ownership. I designed the architecture, built the embeddable widget, the dashboard, the backend, the data layer, and the AI features — then led the small team that scaled it all in production.
What I built
-
Full product architecture, from scratch
React/TypeScript dashboard, Node.js + GraphQL backend, MongoDB data layer. I chose MongoDB and GraphQL for the same reason — survey schemas and response shapes vary wildly from one customer to the next, and a flexible model plus a dynamic query layer let us ship new question types without database migrations.
-
Embeddable cross-domain widget
One script tag drops Told on any client website. The widget opens isolated iframes for each popup, which keeps the host site's CSS, JS, and CSP untouched — a non-negotiable for clients running serious production sites.
-
Product tour engine
I designed and built most of the product tour module — interactive in-app guides that highlight features step-by-step without a line of code on the client side. The part of Told I'm proudest of.
-
AI-powered creation & analysis
GPT-4 integrated end-to-end — assisted survey writing, assisted product tour design, and a custom report builder where you describe what you want to see and the AI generates the report, live, inside the dashboard.
-
Voice & text AI question type
A new survey question type that opens a live chat with an AI — text or voice. Lets product teams collect open-ended feedback as a conversation, not as a textarea.
-
Documentation with RAG chat
Shipped a chunked, embedded documentation system with a chat layer — ask the docs a question, get a contextual answer with sources.
-
MCP tooling
Exposed Told's core capabilities — create a survey, build a product tour, generate a report on results — as MCP tools, so users can drive Told from Claude, ChatGPT, or any agent.
-
Event pipeline & infrastructure
Backend processing 10M+ events per month, stored across AWS S3 and RDS on a Kubernetes pipeline. The dashboards and reports query this data live, so query optimization was real, ongoing work.
-
Led a small remote team
Weekly 1:1s with each developer, weekly team sync for current work and new tech we picked up, code reviews on every PR, and a written documentation culture. Small team, high trust, no ceremony for ceremony's sake.
Tech stack
-
End-to-end — dashboard, widget, backend.
-
Dashboard and embedded widget UI.
-
All backend services.
-
Dynamic API over variable survey shapes.
-
Flexible data model for fast-evolving schemas.
-
Event storage and relational data.
-
Production deployment pipeline.
-
Service containerization.
-
Unit and integration tests.
-
Assisted creation, custom reports, in-survey chat, RAG docs.
Impact
-
responses collected
19M+
-
companies trust Told
600+
-
developers led remotely
3
Trusted by
- Royal Canin
- Axeptio
- Inqom (by Visma)
- WorkLife
The trade-off
Small team, large surface. We had to ship features fast enough to stay relevant, but clean enough not to break anything in production — clients embed our widget on sites they care about, so the quality bar was high. We invested in tests, code reviews, and writing things down, and turned down features we couldn't ship well.