Ryan Bales
Lead Product Designer

Project Overview

Project Brief

SolidFire offers all-flash storage solutions for cloud providers. SolidFire storage hardware comes with a suite of software solutions to manage and monitor your storage infrastructure.

The Goal

My goal was to design the user interface for SolidFire's software suite.

Design Challenges

  1. The users of this software are incredibly technically proficient, so I really had to understand the users and their needs.

  2. Data is extremely complex and navigating the data within the app requires simplifying what would otherwise be an overwhelming set of controls.

  3. Infrastructure software is critically sensitive so testing (even at the UI layer) is paramount.

My Responsibilities

  • Research

  • Prototyping

  • UI Design

  • User Testing

  • Developer Handoff


Sketch, InVision, MockFlow, Adobe CS

Design Process

User Interviews

I made it a point to really focus on user centered design for this project. This isn't a tool for the masses, but it's an important tool for the users who rely on it to run their IT infrastructure. Therefore, I started out by interviewing enough users until I began seeing some trends.

Interview Findings

  • Confirmation prompts are extremely important for critical controls (i.e., start/stop)

  • Focus on a strict and meaningful definition when classifying system status (i.e., warning, critical, OK).

  • Dashboards should highlight spikes rather than super specific data points.

  • Some users have hundreds of storage volumes to manage and therefore navigating these easily is important.

  • Controls for filtering across all metrics is vital.


Understanding the Data

This project required that I spent a lot of time with engineering so I could gain sufficient knowledge about the data we are collecting with the backend software.

I was then able to begin the process of developing the user interface.


Prototypes & Testing

This product has two main components: storage management and performance analytics.

I began by creating some quick prototypes of all of the screens I had identified during features/requirements session.

Throughout the process, I worked with users and engineers to refine the prototypes. Major usability and feature challenges were solved during this process.



Reporting is one of the most important features in the product. This screen allows users to dial in performance metrics. The biggest challenge on this screen was building a meaningful date range picker.

The challenge was that since the user didn't particularly know when a performance event happened, it was important to display the data/chart within the date picker itself.

The frontend developers weren't particularly excited about implementing this chart/date ranger picker due to some limitations within their charting library. However, we worked together and they were able to implement it nearly perfect to my design --down to the pixel!


Alerts Dashboard

I learned that the alert screen is what most administrators were displaying on their "command center" projector. Therefore, it was important the screen was clean, simple, and actionable.

I also kept accessibility in mind and made sure to not simply relay on colors.


Volumes Dashboard

The volumes dashboard allows users to get an overview of specific volume date. Granularity wasn't a priority, but rather a general overview.

As with all the charts, I worked with front end developers to ensure the data visualizations I designed were supported by the chart library they're using.

User Testing

Because of the sensitive nature of this product, rather than initially testing it out in the wild, we opted for setting up some "dummy" storage devices for testing.

I invited a dozen or so users to play around and recorded their activity.


  • Added a search function on the Volumes dropdown.

  • Made minor adjustments to user flow.

  • Initial color palette was a bit soft, so I added more contrast for "command center" projectors.