01
AWS Panorama
Bringing computer vision to common PoE cameras that were never built for it and designing the console that made an edge ML appliance manageable.
AWS Panorama · 2020–2023 · General availability October 2021
- Edge ML
- Console Design
- Information Architecture
- Design Systems
| Tier 1 launch October 2021 | 50+ screens redesigned after an architectural pivot | 278+ usability bugs resolved pre-launch | One framework governing every console action |
Almost none of it had precedent at AWS
Most computer vision runs in the cloud. That works until the cameras are in a poultry plant, a roadside cabinet, or a warehouse mezzanine where bandwidth is limited, latency matters, and footage can’t leave the premises.
Panorama was the answer: an edge appliance that connects to existing IP cameras and runs models locally. Customers keep their cameras; the appliance provides the intelligence.
The design problem was that this was a physical device you order, ship, unbox, plug into a network and register, managed through a cloud console that also handled applications, models, camera streams, deployments and over-the-air software updates. Console patterns existed for cloud resources. They did not exist for a box in a factory that might be securely offline.
And before launch, the service went through an architectural pivot. Work that had been settled reopened: how customers would build applications, what the resource model actually was, and how any of it should be managed.
One framework instead of a hundred decisions
The temptation on a console this large is to decide confirmation and consequence patterns screen by screen. That produces a product where deleting a device feels like deleting a tag.
Instead I ran a global audit of every action in the console and rated each for severity using a CFS matrix. One consistent model, applied everywhere. This mapped the weight of an interaction matched its actual consequence, and new screens inherited the standard rather than inventing one.
Alongside it I redesigned the resource information architecture and most list and detail views, 50+ designs establishing what a device, application, node and camera stream each were, and how customers moved between them. Then catalogued every status lifecycle for every resource type, which later became the foundation for troubleshooting.
Refusing to ship without an escape hatch
The architectural change meant editing deployed applications wouldn’t make GA. Based on our research it was a big deal for customers. An ML application needs iteration to reach a working state, and redeploying from scratch for a minor change was a cost our weekly customer interview sessions confirmed was unacceptable.
I pushed back rather than accepting it as descoped. Working through the options with engineering, I landed on Replace function using existing functionality to behind the scenes delete the application on the customer’s behalf and redeploy with an updated configuration, prefilling the wizard with everything from the previous deployment. That took resolving a lot of engineering edge cases to keep the substitution invisible whether the customer used the console or the API.
Replace became the primary method engineers and Solutions Architects used to update deployed applications.
The same instinct applied to software updates. I catalogued the full matrix of update types: optional, mandatory, major version, backwards-incompatible, and the online/offline complications of an edge device. Then I pushed the team on update policy distinctions, not just interface: how often mandatory and major releases should be forced on customers at all.
That argument shipped as platform behavior. In January 2023, AWS added
AllowMajorVersionUpdateto the Panorama API, making major version updates opt-in.
How I worked
Set the north star — A customer gets from an unboxed appliance to a running computer vision application without needing to understand the platform’s internal object model.
Align the organization — Customer interviews split across three designers; four internal research sessions with ProServe, Solutions Architects and engineers from other AWS services; and I led the studies on device setup, where you learn that the person plugging in the appliance isn’t the person who’ll use it.
Engage the constraints and push them The Replace API, and the update-frequency argument.
Deliver with rigor — Reviewed 100+ console screens ahead of UX sign-off, worked through 278+ usability bugs with engineering, and ran a full audit of every help panel in the console with the content and engineering teams.
Rebuilding how the team worked
At the time Figma had only been approved for use at AWS for several months. Three designers shared one Sketch file that only one could edit at a time. Parallel work meant multiple files, duplicate screens, and no global view of the console. Every engineering review meant exporting a PDF. Partners rightfully complained about multi-hundred-page documents where the changes since last time were impossible to find.
I investigated migrating to Figma against three risks: a live GA timeline mid-review, two designers who hadn’t used the tool, and the migration effort itself. With the team on board, I rebuilt 100+ screens in two weeks, built a common external component library, organized by feature and user flow, with annotations alongside the designs so engineers had intended behavior in context.
The design team stopped managing PDF exports. Collaboration with the product team was amplified. All three designers worked simultaneously in one file. Engineering implemented with more autonomy, because the intent was written next to the design.
Impact
AWS Panorama reached general availability on 20 October 2021 as a Tier 1 launch, with the appliance available for purchase and a device SDK adopted by hardware manufacturers including ADLINK, Axis, Basler, Lenovo and Vivotek.
The service went on to serve Tyson Foods, automating inspection of thousands of product carriers per line, and Deloitte’s deployment for the Victorian Department of Transport. That consisted of Panorama appliances analyzing 1,200 cameras across 23,000 km of road network in real time.
Platform work continued through 2023, including Direct Hardware Access and a redesigned application SDK.
What I’d change
I’d have built a more methodical way of collecting results from our feature experiments and customer feedback. We shipped steadily and well; we measured what happened afterwards far less consistently than we designed what should happen. That gap is the thing I’d close first.
I’d also have argued for troubleshooting as launch-critical rather than post-GA. The fuller version of that argument is in the deep dive below.
Deep dives
Remote Troubleshooting → When security removed SSH at launch, every customer lost their only debugging tool. The ask was to add troubleshooting features, the customer need turned out to be more nuanced.
Defect Detection → Computer vision quality inspection for people with no ML expertise — later productized by a partner under a multi-year AWS agreement.
AWS ended support for Panorama on 31 May 2026. The work here reflects the service as it shipped.
Sources for public claims
- Computer Vision at the Edge with AWS Panorama — AWS News Blog, 20 Oct 2021 — GA announcement, appliance detail, pricing, concepts
- AWS Panorama release history — every dated feature, including
AllowMajorVersionUpdate(19 Jan 2023) - What is AWS Panorama? — Developer Guide — the appliance, the device SDK and the service concepts. (The former FAQ page at
aws.amazon.com/panorama/faqswas withdrawn at end of support.) - Victoria DoT / Deloitte AutoEye — iTnews, May 2022
- Tyson Foods anomaly detection — AWS ML Blog