I didn't design 100 apps. I designed the system that made them possible.

I didn't design 100 apps. I designed the system that made them possible.

I didn't design 100 apps. I designed the system that made them possible.

Somewhere around integration 12, I realised we were building a problem faster than we were building a product. Here's what I did about it.

Somewhere around integration 12, I realised we were building a problem faster than we were building a product. Here's what I did about it.

Integrations
Design at Scale
Freshworks 2024

What I owned

Sole designer across 100 third-party app integrations spanning 6 PM tracks and multiple engineering teams · Identified systemic fragmentation risk before it became irreversible · Proposed and drove the 2-week framework pause against leadership pressure for speed
Sole designer across 100 third-party app integrations spanning 6 PM tracks and multiple engineering teams · Identified systemic fragmentation risk before it became irreversible · Proposed and drove the 2-week framework pause against leadership pressure for speed

What I walked into

100 integrations. 100 days. Every PM had a different vision. The experience was already fragmenting before we'd shipped 10.

Freshworks, the first Indian SaaS company on NASDAQ, had an ambitious bet: become the one-stop platform for every support agent's workflow. Not just tickets and chat. Shipping, payments, CRM lookups, productivity tools, all inside one product. The 100 Apps initiative was how they'd get there. 100 third-party integrations, in 100 days.

I was the sole designer across the entire initiative.

Working simultaneously with 6 PMs and multiple engineering teams, each moving at their own pace with their own constraints.


Category

Count

BFSI

7

E-Commerce

28

Non vertical

54

Travel & Hospitality

11

When I joined, a handful of integrations had already shipped. They worked technically, but the experience was chaos. The same action, tracking a shipment, looked and behaved completely differently depending on which carrier's integration you were using. Agents switching between FedEx, UPS, and DHL had to relearn the interface each time.

And so I thought, "without intervention, we'd ship 100 integrations and create 100 different ways to confuse the same agent."

Each integration was owned by a different PM, built by a different team, and was moving on a different timeline, with no shared system, no design language, no consistency.

The moment I became the bottleneck

Before I could fix the product, I had to be honest about something uncomfortable. The way I was working was making the problem worse.

I tracked how I was actually spending my time:

60%

30%

10%

Meetings and Slack across 6 PM tracks

Visual QA catching implementation inconsistencies

Actually designing

Every integration needed review. Every PM wanted input on their use case. Every developer had implementation questions. I was the single point of failure in a system that needed to move at speed and the way I was working was guaranteeing the fragmentation would continue.

The only exit was upstream. Stop solving at the screen level. Solve at the system level.

📍 I had 4–5 days per integration including design, review, and handoff. Whatever the solution was, it couldn't require more time per integration. It had to require less.

"I stopped designing integrations and started designing the container they'd all live within."

The two weeks nobody wanted

I proposed stopping the sprint for two weeks to build a structural framework every integration would live within, so that we could still hit the quarterly goal if we moved fast after.

6 PMs. Each with their own roadmap and their own stakeholders. Each being told by a designer that their sprint was pausing? The pushback was immediate. I made my way through by showing the business cost and not by arguing design quality.

I pulled up two integrations from the same vertical, shipping; and walked them through the flows side by side. Identical use case. Completely different interaction patterns. Then I showed the VQA data: 40+ review iterations per integration because nothing shared a foundation.


The question quickly shifted from "can we afford to pause?" to "can we afford not to?" and so we paused.


The framework I came up with:

Standardise the container. Leave the content flexible.

Every integration had the same header structure, same footer with primary actions, same component library in the body. What changes is the content inside, but where to look and how to act is always identical.

📍 The two weeks I fought for saved months of irreversible debt.

The outcome

From bottleneck to quality gate; I could review 10 integrations in the time it used to take me to design one.

Something unexpected happened, after implementing the framework.

Developers started helping each other. Because every integration used the same structure and components, code became reusable across integrations. PMs aligned faster because there was a reference structure to point to. The framework didn't just solve the current sprint, it changed how the entire team worked together. Yay!

What I carry forward

I reflect that design is about creating leverage, building systems and frameworks that multiply the impact of everyone around you. The question I ask at the start of every complex project now: where's the leverage point? What's the one thing, if I get it right, that makes everything else easier?

Create a free website with Framer, the website builder loved by startups, designers and agencies.