For most of my design life, I’ve worked alone (specifically for myself), so I’ve never had an impressive design workflow. To be completely honest, it’s embarrassing. I wouldn’t wish for even my worst enemy to inherit my design files. Because I mostly hand off design files to myself, I often paste together designs and cut corners in order to get an idea down on paper as quickly as possible. I’m not proud of it, but this is how I work.

Since Cushion has a few years under its belt, I’ve been able to establish a solid design style that’s been shaped over time. This makes designing new interfaces much easier because the style answers most of the common questions. There are rarely hard decisions to make with regards to small details, like color, spacing, or typography. This lets me focus on the higher level questions, like purpose or necessity, which often aren’t visual.

Having an established style makes designing more automatic. Instead of starting from scratch each time, I can paste a screenshot into Sketch and design on top of it. Everything is really scrappy, as opposed to the cleanliness of the design itself. Sometimes, it feels more like collaging than design. I don’t use symbols. I don’t organize or rename any of my layers. I’m constantly copy/paste artboards to iterate on random ideas that probably won’t pan out, but they might.

I always find that the initial design is drastically different than the end result. Because I like to copy/paste artboards so much, I retain the entire iteration path from start to finish. I don’t have much reasoning besides personal preference, but I tend to copy artboards horizontally for major iterations, like layout changes, while vertically-pasted artboards explore minor changes. This leads to my Sketch page looking like a Zelda dungeon map, which I love.

As soon as I narrow in on a solid direction, I’ll move over to code, trying not to spend more time than I need in Sketch. Since the design is good enough to pursue, and I’m the one implementing it, there’s no need to be perfect. I’ll end up tweaking the CSS anyways.

I always go into coding knowing the design will most likely change, but that’s good. The purpose of the original design is to simply give me a direction. Once we introduce transitions and interaction, nothing’s sacred. Sometimes the code will demand that I return to the design file for a few more iterations. Rinse and repeat.

Our design workflow isn’t set in stone, it’s fluid—all over the place and going wherever it needs to go. If I can get enough out of a post-it note, great. If a design needs more time in Sketch, fine. With such a small team, we can afford to work without specs, sign-offs, or a perfectly organized design file. I prefer this chaos. It’s messy, but it works for us.