Scytale Enterprise — a command-line engine, made a product by Catherine HicksScytale Enterprise — a command-line engine, made a product by Catherine Hicks

Scytale Enterprise — a command-line engine, made a product

Catherine Hicks

Catherine Hicks

Most of my case studies are about a screen. This one is about a whole product. At Scytale I was the first and only designer, and my job was to take an open-source, command-line identity engine and turn it into something a security team could actually adopt. I built it end to end — research to launch — and the platform proved pivotal in Scytale being acquired by HPE.

The problem: enterprises had outrun their own security

By 2018 a single application wasn't one thing — it was dozens of interconnected services across cloud, containers, and on-prem, each needing to prove who it was to every other one. The perimeter tools built for that assumed a network edge that no longer existed. The industry's answer was Zero Trust, and Scytale had already built the engine for it in SPIFFE and SPIRE, the CNCF open-source project.
But it stopped at open source. The engine was almost entirely command-line — hand-written YAML, config edited by hand, the domain of a few engineers willing to do that work. To become a company rather than a project, Scytale needed a product: wrap the raw power of SPIFFE/SPIRE in a platform that let security teams keep full control and scale to thousands of identities, while removing the command line as the price of entry.
The hard part was the audience. I was designing for security and infrastructure engineers who trust the terminal and distrust abstraction. So the UI couldn't just be prettier than the CLI — it had to be faster, clearer, and harder to break than the CLI, while still respecting their expertise.

One coherent system, built surface by surface

Because I was designing the product's entire surface, the work was a set of interlocking features that had to feel like one system — held together by a single guided, form-driven interaction model reused everywhere. I designed with Material Design for launch speed but pushed the cards past the defaults, building pagination and search into every section — because the real test wasn't the demo dataset, it was the screen at enterprise scale.
The Scytale Enterprise dashboard: identity providers, node sets, and servers for a trust domain — search and pagination built into every section so it holds at enterprise scale.
The Scytale Enterprise dashboard: identity providers, node sets, and servers for a trust domain — search and pagination built into every section so it holds at enterprise scale.

One framework, many types

Node sets and workloads were the foundation. Behind the same task, every environment carried different parameters — Kubernetes SAT and PSAT, single and multi-node AWS EC2, Linux X.509 and Join Token, fully custom types. I designed one form-driven model and reused it across every type. We'd considered letting users set every parameter freely, but that was error-prone — a wrong value could break a system — so I moved to a guided approach that surfaced the right data per type and protected users from themselves.
Creating a node set through a guided, form-driven flow — the single interaction model reused across every identity type, surfacing only the parameters that apply.
Creating a node set through a guided, form-driven flow — the single interaction model reused across every identity type, surfacing only the parameters that apply.

The turn that taught me the most

Identity mapping gives cloud workloads access to on-prem providers like Active Directory. I first designed it for 1:1 mapping — one identity at a time. It demoed beautifully and it was wrong: pressure-tested against real enterprise scale, that model would collapse the moment a team had thousands of identities. So I redesigned it around one-to-many. That single change was the difference between a demo feature and a platform — it let the security engineer delegate and batch instead of grinding row by row, shifting the role from bottleneck to enabler.
Map Identities redesigned around one-to-many mapping — batching identities across providers instead of one row at a time. The change that made it a platform, not a demo.
Map Identities redesigned around one-to-many mapping — batching identities across providers instead of one row at a time. The change that made it a platform, not a demo.

Holding a position

Being hired as the expert means taking a position, not just facilitating one. On event logs the team was split between per-type views and one filtered view — as UX lead I made the call for a single filterable view, audited comparable tools to sanity-check it, and defended it. On user management I designed for expansion before the roles were even defined, so design didn't block on a spec still being written.
The event log as a single filterable view rather than per-type screens — a UX-lead call, audited against comparable tools and defended.
The event log as a single filterable view rather than per-type screens — a UX-lead call, audited against comparable tools and defended.

Where it landed

Scytale Enterprise launched on 19 June 2019, and the platform was pivotal in Scytale's acquisition by HPE in 2020 — about eighteen months from my start to acquisition. Onboarding dropped from weeks to minutes; engineers could create and maintain identities without a CLI, which was the entire adoption thesis. When HPE acquired Scytale, the UI I'd designed was formalized into HPE's product offerings and re-skinned into the HPE Design System — the bones held, the brand changed. It lives on today as HPE Project Cosigno.
The lesson I carried furthest: a design that works in a demo can still fail in production, and only user reality tells you which one you have.
Like this project