Commit one to SOC 2, with a team that never left
OutboundSync spun out of a Denver outbound agency in 2023. We wrote its first line of code, are still shipping three years later, and now land close to a third of its commits through AI agents — with the review gate exactly where it was.
What we built
The integration surface, which is the hard part
Nineteen sending platforms — email, social and phone — each with its own webhook shape and its own vocabulary for the same events, normalised into one model and written into six different CRMs. 190 distinct platform events. Every one has to land on the right record, in the right account, at the right time, or a customer’s revenue attribution is wrong.
A codebase that had to pass an audit
Roughly 159,000 lines of TypeScript and Vue in production, 155 database migrations applied on every deploy, and 177 API routes of which 36 are published in a public OpenAPI 3.1 spec that a contract test refuses to let drift. The product passed SOC 2 Type II in 2025 and re-attested in 2026 with an audit window twice as long.
A test suite sized like the product
About 3,400 automated test cases, roughly one line of test per line of source. That ratio is what made it safe to raise throughput later without moving the review gate — and it is why external marketplace reviews at HubSpot, Close and Attio were a formality rather than a project.
A product agents can operate
Shipped between July and September 2026: a public API, fifteen MIT-licensed agent skills installable in one command, documentation rebuilt for coding agents, a hosted MCP server exposing roughly 35 tools, WebMCP so an agent in a browser tab can drive the marketing site, and webhooks that tell an agent when a sync breaks. Included on every plan at no extra cost.
Three years, in order
- September 2023
A ScrumLaunch engineer pushes a commit called `init`. It is still at the root of the repository running in production today — not thrown away and rebuilt by a later team, which is the more common ending for a first commit written by an outside partner.
- 2023 – 2025
The platform grows into a TypeScript monorepo: a NestJS API on Fastify with a separate background worker, a Vue 3 admin application, PostgreSQL through Prisma, Redis-backed queues carrying every event. 687 merged pull requests, 90-plus tagged releases, 1,470 tracked issues.
- 2025
SOC 2 Type II. Listings clear external review in three platform marketplaces, and the company becomes a HubSpot Technology Partner. None of that is available to a codebase nobody trusts, which is the argument for the test ratio above.
- 2026
AI coding agents become a measurable share of delivery — and then the same idea turns outward, as the product starts exposing tools that other people’s agents can call.
- Today
Same repository, same engineer who wrote commit one, three years on. 150M+ records synced into customer CRMs at an average latency of 10ms, more than 1,500 app installs, 62 agencies in the partner directory, past $500,000 in annual recurring revenue — bootstrapped and profitable.
What changed in 2026, with the receipts
Where the team sits
An AI coding agent is now the third-largest contributor to the product repository by commit volume and the second-largest to the marketing site — 604 agent-authored commits between them. In the quarter since June 2026 agents authored 31% of what landed in the product repository and 24% of the marketing site. Every one of those commits went through the same pull-request review as a human’s: the throughput moved, the standard did not. Agents authored; people reviewed and merged.
How people get here
Getting there took setup rather than a subscription. One instruction file that behaves the same whether an engineer is driving Claude Code, Cursor or Codex, with a bundled skills directory instead of per-tool rule files that drift apart. Work starts as a written execution plan committed to the repository before the code, which is the difference between an agent that ships and an agent that generates. The audit practice we run on our own estate scores repositories on the same ten dimensions.
Results
- 150M+
- Records synced into customer CRMs
- $500K
- ARR, bootstrapped and profitable
- 1,500+
- App installs across three marketplaces
The engagement
- Node.js7,000+ hours · 2 developers
- DurationSince 2023
Want a team like this? Tell us what you are building, or see how we staff engineering teams.
Ready to get started?
Contact us at [email protected] or fill out the form