Loading
Amazon Web Services · EC2 Console

Redesigning Auto Scaling for a new design system

An inside look at the UX strategy and cross-team coordination behind migrating the EC2 Auto Scaling console to AWS's Polaris design system, while shipping meaningful new capabilities alongside the migration.

Role
Lead Product Designer
Timeline
9 months
Launch
GA · AWS re:Invent 2019
Skills
Design systems Complex workflows Cross-team coordination User research Prototyping

Overview

I joined a small AWS team responsible for the EC2 Auto Scaling console — the interface customers use to automatically scale compute capacity based on demand, schedules, or custom metrics. Over three months I worked across the full design lifecycle, from initial scoping through developer handoff, on a dual mandate: migrate the console to AWS's new Polaris design system while shipping meaningful new capabilities alongside it.

Due to the confidential nature of AWS internal projects, I'm unable to share detailed materials publicly, but the work below reflects the shape of the project and the decisions it required.

Context

EC2 Auto Scaling covers Auto Scaling Groups (ASGs), Launch Configurations, and the newer Launch Templates. In early 2019 the team was asked to migrate the console to Polaris and use that migration as an opportunity to ship capabilities customers had been requesting — not a simple lift-and-shift.

What made it hard

  • Design system fit — Polaris introduced new navigation and page patterns that didn't map cleanly onto the legacy console.
  • Product complexity — each ASG exposed 9 configuration tabs, a branching creation wizard, and deep dependencies on Launch Configs and Templates.
  • Cross-team dependencies — key patterns touched the EC2 Core Platform team, the Polaris design system team, and the Load Balancer team.

Who we designed for

DevOps engineers, cloud architects, and developers all touch Auto Scaling differently — architects design the group structure, DevOps configure it, developers trigger it. The create flow had to serve all three.

Goals

The migration was the vehicle; a meaningfully better experience was the destination. Five capability improvements were scoped alongside the Polaris translation work.

  • Single-click Spot Instances — apply AWS Spot recommendations with minimal friction.
  • Predictive scaling — surface ML-based scaling predictions ahead of demand spikes.
  • Launch Template promotion — steer users toward Launch Templates over the older Launch Configurations.
  • New list view — redesign the ASG list to surface the right data within the Polaris table model.
  • Inline edit model — replace modal-based editing with per-container inline edits, to handle the volume of configuration fields.

Process

The project ran March through December 2019, targeting GA at AWS re:Invent. Work was structured around formal design deep-dives with senior UX stakeholders, punctuated by cross-team syncs and user research.

Scoping (March)

Inventoried every component and action in the existing console, mapped each to its Polaris equivalent, and assigned UX effort estimates. This became the team's shared source of truth and flagged early dependencies on the Core Platform team.

Create-flow deep dives (April–June)

Four design reviews refined the multi-step ASG creation wizard: resolving the Launch Template selection pattern, aligning with the Load Balancer team on a shared AZ/subnet pattern, and settling the capacity and scaling policy steps.

Research (ongoing)

Card sorting and interviews validated which Launch Template columns mattered most to users and where they expected to initiate template creation.

Details, edit & handoff (Q3–Q4)

Designed the inline edit model and prototyped the full 9-tab Details experience, then phased the handoff to engineering — prioritizing design time on the highest-complexity surfaces.

GA launch (December 2019)

The redesigned console shipped as generally available at AWS re:Invent 2019.

Key Decisions

A few decisions had outsized impact on both the experience and the timeline, each requiring a trade-off between design system fidelity, cross-team dependency, and shipping on schedule.

Inline edit over modals

Polaris discourages modal editing for complex resources, and the 9-tab ASG Details page had far more fields than any modal could hold. We designed a per-card inline edit model instead, keeping modals only for bounded actions like Scheduled Actions and Lifecycle Hooks.

Deferring split-pane until alignment landed

Polaris had no equivalent to the legacy split-pane detail view, and multiple teams were exploring it in parallel. Rather than build something custom, we shipped the full-page Polaris model with modular containers that could adapt once a system-wide pattern was settled.

Prioritizing UX time on high-complexity surfaces

Scoping showed that list views, deletion flows, and read-only states were straightforward Polaris translations. Handing those off to engineering with minimal design support freed up time for the create and edit flows, where the decisions were least obvious.

A shared AZ/subnet pattern

Availability zone and subnet selection appeared in both the EC2 and Load Balancer consoles, each handled differently. Rather than design a third variant, we brokered alignment between the two teams on a single shared pattern.

Outcomes

9 Tabs of ASG configuration redesigned in the Detail view
5+ Design review deep-dives across 8 months
3 Partner teams coordinated across — Core Platform, Polaris, Load Balancer
GA Launch at AWS re:Invent, December 2019

The upfront scoping exercise turned out to be a design deliverable in its own right — it made ambiguity visible and shaped every prioritization call that followed. Just as important was treating cross-team alignment as part of the design work rather than a precondition for it, and designing for modularity so the team could ship without blocking on patterns still being settled elsewhere.

Working on infrastructure tooling at this scale means your decisions get multiplied across thousands of engineering teams running real production workloads — a discipline that's shaped how I approach every complex design problem since.