Third-Party App Optimization

Year

2024


Service

UX research
UX/UI design

Making external tools feel native inside a chat experience.

As one of two external designers embedded in a larger product team, we designed third-party app integrations for platforms like Bitbucket, Jira, Asana, and Google Calendar. Some were new, some were existing apps that needed updated functionality or fixes. Over the course of the engagement, we completed seven apps, including a YouTube music recommendation integration we proposed during a break between projects. The first app we shipped hit 5,000+ monthly active users after deployment.

FIRST APPROACH

How does it work?

Before we could design anything, we had to understand how Chat apps actually worked under the hood. Our first task was to build a simple app in code ourselves — walking through the same process developers go through to ship one. It was basic, but it meant that every design decision we made after that was grounded in how these apps actually get built and deployed.

Google for developers

Understanding the landscape

Google Chat had an existing ecosystem of third-party apps. We audited what was already out there, mapped the patterns that worked and the ones that didn't, and started building a mental model of where the real friction lived. That meant a lot of conversations with the dev team — not just "can we do this?" but "why does it work this way?" and "what are we actually constrained by?"

Google Workspace Marketplace

CRAFTING SOLUTIONS

Workflow blueprint

The first two apps were our proving ground. We used them to figure out what a repeatable process looked like for this kind of work — benchmarking, flow design, sketches, wireframing, and design specs — and then locked that process in for the remaining five. Having a consistent framework meant we could move fast without rethinking our approach every time a new app came in. The process itself became a deliverable.

Workflow

Unknown territory

Every app meant a new domain. Bitbucket thinks in repositories and pull requests. Asana thinks in tasks and timelines. Calendar thinks in availability and conflicts. We had to learn each platform's logic well enough to prioritize the right actions and surface the right information inside Chat — which meant reading API documentation, mapping data structures, and genuinely understanding how developers, project managers, and everyday users each think about their tools differently.

Designing within bounds

The design system for third-party apps was minimal. A small set of components with hard technical constraints on layout and interaction. That limitation turned into one of the most interesting design challenges of the project. We found ways to repurpose the same components for different functions, stretch visual hierarchy with the few tools we had, and make apps feel distinct from each other while working within identical constraints. Some of our most creative solutions came from having almost nothing to work with.

Multi-project playground

Seven apps across platforms with completely different user bases and workflows. From developer tools like Bitbucket and Jira, to project management with Asana. Each one was a full cycle: research the platform, understand the users, design within constraints, spec for development. We shipped the Bitbucket app and ran QA on it during the engagement. The YouTube app came from a different place. Between projects, we were invited to propose an integration if we saw a good opportunity. We pitched a music recommendation feature tied to listening history, and built it out.

CREATIVE DISPLAY

The best part of these projects is seeing the final product come to life.Here's a glimpse into what actually shipped. Some of the apps that are now live within the chat platform.

Bitbucket Welcome message Bitbucket notification

We built a tutorial with steps to guide the users on how to connect some apps that required extra steps

Bitbucket connect tutorial
Jira Welcome message Jira create task

We added a touch of humor to some notifications to reinforce the message and create a connection with the user by adding emojis, giving the bot a more human feel.

Jira unknown command

FINAL THOUGHTS

This project changed how I think about design constraints. With a limited component system and a stream of apps arriving one after another, the work was never about having the perfect toolkit. It was about understanding each platform deeply enough to make smart decisions with what we had. The ability to walk into an unfamiliar domain, learn its logic fast, and design something that actually fits how people already think and work. That's what I carried out of this project, and it's shaped how I approach new projects.

Next Project


Catalan COVID Vaccine App


Streamlining COVID vaccine access for Catalan citizens.