← All work
Ivanti

Ivanti — Enterprise IT security · US

One design system for the whole corporation

Role
Angular Frontend Developer
Period
2021 – 2022

Ivanti, a US enterprise IT security company, wanted to offer unified endpoint management to their clients. The problem was that their products had been built by different teams at different times and did not look, or behave, like they came from the same company.

What I built

I built IDS, Ivanti’s design system, inside an Nx monorepo — Angular components styled with Tailwind CSS on a token-based foundation, documented in Storybook so developer teams across the corporation could adopt it without asking anyone.

Tokens were the important part. Hard-coded values in a component library mean every brand adjustment becomes a migration; tokens make it a config change.

Adoption is the hard part

Building a component library is straightforward. Getting other teams to use it is not. I refactored existing Ivanti applications onto IDS, aligning them with the new look and UX guidelines — which both proved the library worked in real products and gave other teams a reference migration to copy.

Alongside that I worked with key stakeholders on test coverage across the application, inside a cross-functional team.

What I’d do differently

Start the migration of one real product on day one, in parallel with the library, instead of building the library first and migrating after. Every assumption that survived to the migration phase was one we had to unpick under time pressure.

Stack

Angular 12 · Nx · design tokens · Tailwind · Storybook · Jest · Karma · Jasmine · unit tests · integration tests