In late December 2022, we decided to pivot. This blogpost is about how, after deciding to pivot and choosing a new product direction, we launched a public alpha in a month.
When we built CRM integrations into our previous marketing automation product, we found it frustrating just to read through HubSpot and Salesforce developer docs. Salesforce was especially painful since there were at least three ways to simple things, like performing CRUD operations on standard objects. Do we use the REST, Bulk, or SOAP API? Each had their own quirks, rate limits, and limitations. Multiply the options with additional use cases like batch operations and real-time updates, and we quickly were playing three-dimensional chess just to understand which of the 13+ APIs was the right choice for our needs.
We did evaluate other tools, but they were missing key features. For our CRM integrations, we needed idempotent upserts of objects, granular control over sync frequency, and dependent-object creation (in our case, Contacts before Emails, if the Contact didn’t already exist).
With Supaglue, we are building a developer platform that is both fast and flexible, a product we would have been excited to use to ship customer-facing CRM integrations for our prior product.
Of course, our experience was just one data point, so the first order of business was to validate that other companies shared the same problem. We reached out to all the teams in our network building products with CRM integrations, and reconnected with friends and past coworkers who had built CRM integrations in the past.
Through a few dozen user interviews, we validated some hypotheses (existing solutions didn’t didn't offer developers enough control) and discovered new themes (some companies were averse to customer data leaving their cloud). These conversations refined the key use cases to support, and helped us with bigger product decisions like starting with a self-hosted Docker rather than cloud offering.
As we learned, we “built” our product by writing and iterating on docs as if the product already existed.
The early feedback was heard was incredibly valuable, but come January, we wanted to build a demo to learn faster and get higher-quality feedback. How fast could we do this?
We decided to build a tracer bullet prototype. If an alpha product is an MVP, a tracer bullet is just M (minimal): functional and end-to-end, but neither viable nor a real product.
This meant we didn't design for production use cases. For example, we'd used Temporal in our prior product to build robust workflows for sending emails, but for the prototype, we used a lightweight library that kicked off jobs in-band with our web server. This wasn't something we would launch with, but it was good enough for demos.
At the end of day three, we had a barely functional, but end-to-end prototype that we could show to developers and prospective customers. The tracer bullet also helped our team reason about the product, align on concepts and terminology, and build the alpha more effectively.
After the tracer bullet, it was time to start building in earnest. In the spirit of shipping early and often, we set a public alpha launch date of February 3. We quickly divided up areas of ownership, and went into heads-down execution mode for two weeks.
The aggressive timeline we set for ourselves forced us to focus on the most basic of use cases: syncing common standard objects from Salesforce to a developer’s application. Everything else was ruthlessly cut, including things that normally would be considered fundamental like client-server authentication, unit tests, input validation, error states, and more.
During this time, we did away with traditional project management software and instead had a living Notion doc with a list of tasks. For at least this initial sprint, we wanted to increase the speed of decision-making by reducing the overhead of tickets and additional mediums for communication.
As the alpha began to be usable, we started to use it for demos and even distributed a private GitHub repo for folks to kick the tires. In the days leading up to the launch, we put together a website and added content and tutorials to our docs.
On Feb 6, 2023, four weeks after we decided to build a new product, we launched our public alpha on LinkedIn and Hacker News.