Taking over an in-house platform that couldn't scale
The first version was built in-house by the client's own team. It couldn't handle the volume of campaigns, pages, and emails the business needed, it was slow and buggy, and login, payments, and security all had problems.
I joined their team of 14 and owned specific core systems end to end, from design through production.
The problem: go-to-market work spread across too many tools
A typical B2B revenue team finds prospects on LinkedIn, keeps records in Salesforce, writes emails in one tool, builds landing pages in another, and sends gifts through a third. Every handoff is copy and paste, and nobody sees the whole journey.
The platform's idea is one platform where a signal about a person becomes a personalized campaign. My job was building the systems that make those pieces work together.
Background queues so campaigns scale without slowing the app
Campaigns are stateful: the system knows where each recipient is and what should happen next. Long-running work, like generating thousands of personal pages or sending scheduled emails, runs in background queues, so the app stays fast for the person setting up the campaign.
How the platform turns a signal into a campaign
Each step feeds the next. Contact data flows into campaigns, campaigns generate personalized pages, outreach triggers follow-ups, and a recipient's actions decide what happens next.
Spot a signal
On LinkedIn, in Salesforce, or in the contact list.
Decide the next step
Campaign logic and AI suggest what to do.
Personalize
A landing page and message made for that person.
Reach out
Emails, follow-ups, and scheduling.
Send a gift
The recipient picks a gift and confirms an address.
Measure
Opens, visits, responses, and gifts in one view.
A Chrome extension for LinkedIn and Salesforce
Sales reps spend their day in LinkedIn and Salesforce, so the product goes there. The extension recognises LinkedIn profiles and Salesforce records, pulls out the person and company details, and offers the platform's actions right on the page. No copying data between tabs.
Each platform has its own adapter, so adding another source later doesn't mean rewriting the core workflow.
AI inside the product, not a chatbot in the corner
The AI does real work inside the product: generating landing experiences, helping set up campaigns, personalizing from contact data, and taking actions through the platform's own tools.
Connecting digital outreach to physical gifting
A campaign might start with an email and end with a gift on someone's desk. Gift selection, recommendations, and address collection are part of the campaign, so a click on a landing page can trigger a real-world delivery, and the result shows up in the same analytics.
Results
~10K
200K+
100K+
20+
1,000+
14
Key decisions
Campaigns as stateful workflows
What happens next depends on what each recipient did. Tracking state per recipient makes real multi-step journeys possible.
Background queues for heavy work
Campaigns can mean thousands of pages, emails, and jobs. Queues keep that off the request path, so the app stays responsive.
A separate adapter for each external platform
LinkedIn and Salesforce pages look and behave differently. Adapters keep that mess out of the shared workflow.
AI connected to product actions
AI that can use the product's tools and data produces outcomes, not just suggestions.
Related reading