# Killing the master PSD

> Replaced Swirl Platform's master Photoshop file with a Sketch design system — and unblocked a stalled product roadmap in the process.

- Author: Alejandro Haydar
- Published: 2018-06-30
- Category: Product Design
- Canonical: https://alejandroastroport.netlify.app/showcases/killing-master-psd/

---
import { ToolMigration } from '../../components/ui/tool-migration';

The fast move was to crack open the PSD and start patching. That's what I expected to do — until I sat with the engineers for an afternoon and watched what hand-off actually looked like.

A developer would ask, *"What's the spec for this dropdown?"* Someone would dig through layer groups. Someone else would screenshot a region, paste it into Slack, and eyeball the spacing. Color values weren't documented anywhere — they lived inside the layer styles of whichever screen happened to use them first. Every new feature meant reinventing components we already had.

The bottleneck wasn't the design queue. It was the hand-off.

So I made a different call: don't touch the PSD. Build a real design system in Sketch instead, with proper symbols, shared text styles, and a hand-off process the team could rely on. It would cost throughput up front. It would unblock everything after.

<ToolMigration client:load />

The first question back from the PM and engineers was the predictable one: *how long is the rebuild going to take?* That question kills these proposals — "indefinite" is the wrong answer in a quarter with shipping commitments.

So I scoped the answer differently. I wasn't going to stop the world and rebuild every screen. The system would grow alongside the work — every new project shipped on the new components, and small maintenance tasks migrated as they came up. Screens nobody was touching could stay in PSD purgatory until they got touched. That reframing — *no big-bang rewrite, just stop adding to the old foundation* — is what got the team to back it.

The work itself was unglamorous. I rebuilt the platform's UI as Sketch symbols — buttons, form fields, table rows, chart cards, the campaign builder canvas, the geofence map controls. I documented spacing, color tokens, and type styles. I set up a shared library through Abstract so the four engineers and the PM were all looking at the same source of truth. I wrote a hand-off template — one screen, one artboard, redlines and component references baked in.

The hardest decision wasn't technical. It was **what to leave out**. Several existing screens had been over-customized — bespoke modals, one-off button states, a campaign step that used a different grid from the rest of the app. I cut the variations. If a screen needed something the system didn't have, we added it to the system first, then used it. That rule alone killed half the inconsistency.

## Reflection

The lesson I keep coming back to: **investing in tooling looks slower until you measure throughput a quarter later.** The instinct on a small team is always to ship features. But when the foundation is a single PSD that one person understands, you aren't really shipping — you're paying interest on a debt every time you open the file.