Enter the password to access
HashiCorp builds infrastructure products and is the industry standard in Infrastructure as Code (IaC), behind Terraform, Vault, and Consul.
In 2022 I interned on HashiCorp Packer, a tool for building identical machine images across platforms like virtual machines, containers, and cloud instances. These images bundle the software, configuration, and settings needed for consistent, error-free deployment.
Practioners need image usage data to inform their machine image lifecycle management at scale. Currently, Packer does not have an easy way to extract this data. We want to provide information contextually to inform the practitioner and aid them in their decision making process.
There was a general understanding from existing customer feedback that they lacked actionable data to inform them of how their iterations were being used. Often these metrics would help inform when and how an image's general software lifecycle would fare.
What we lacked was an understanding of which metrics a user actually needed, so we ran research to fill the gap.
On a tight timeline, we needed a rapid method that could clear a critical sample size, which we set at roughly N>50 for our user base. So we leaned on HashiCorp’s open source community and sourced participants through Reddit.
Sample Size
Views
Metrics Found
To better understand which metrics actually fit together, I card sorted using subject matter experts, and then sent that to internal users of our products to validate whether the language was correct.
One hard part of designing a technical product is the fact that it is hard to understand the problem space as well as speak in terms that the end-user would understand, so this was extremely helpful.
Net new iterations
Registry usage
Forced iteration
I ideated through low fidelity wireframes, where I iterated rapidly and sought feedback from our design team. I looked for ideas surrounding context of delivery, and high level user needs.
In an essence, we needed to deliver insights in contextually to make sure that the user is aided in their decision making process. To do this, I delivered the information in 3 levels.
Lets step through what a solution looks like:
A little motion to illustrate the point
Net new iterations
Registry usage
Forced iteration
This was one of the best experiences of my career. I enjoyed tackling such a complex problem space, especially coming from a marketing tech company. A few other takeaways:
With more time, I'd add more granularity to the results and validate the solution through testing.