Bringing Shipcode to life required deep systems thinking, rapid problem-solving, and the ability to simplify complexity at every turn. With limited resources and a small team, I had to lead with clarity, prioritize relentlessly, and design for scale from day one
Designing for App and Web at the Same TimeNo-code platforms are inherently complex under the hood—layout engines, logic/flows, responsive behavior, data binding, etc. The challenge was to abstract that complexity into an intuitive experience that felt familiar to designers and non-technical users—without diluting functionality. This was especially challenging because we always had to find the lowest common denomenator between app and web languages to enable users to use the same experience across multiple platforms.
Tight Timelines and Limited ResourcesAs the only designer on a small, fast-moving team, I wore every hat—product strategy, UX, visual design, systems thinking, and QA. We had no luxury of time or specialized roles, which meant every decision had to count. I focused on designing scalable systems early, prioritizing clarity over complexity, and partnering closely with engineering to ship quickly without compromising quality.
Designing for Technical Complexity Because Shipcode introduced functionality beyond what is common in typical design tools (like Figma), we couldn’t rely on conventions that are familiar to designers. We often had to invent new patterns from scratch and test them internally to ensure they felt intuitive to a design-minded user base—without having any real users in the tool yet.