Getting Started: Developer Experience

The current IBM Cloud developer experience has separate experiences for building their applications, and how to deploy them. Various point solutions have led to reports on poor user experience. This team was asked to research ways to improve how development teams work together on IBM Cloud.

Problem

The current IBM Cloud platform offers minimal support for development teams collaborating and working towards a shared business goal

Role

UX Designer

Time

5 months

Solution

To create an experience that gives developpers the flexibility to use their existing tools to build, run, and test their applications into the IBM Cloud.

Team

Alejandra Chavarria (Research)
Nick Tilden (UX)
Frank Rodriguez (Visual)

Research

Our team was given 6 weeks to produce generative insights on user needs to improve the developer experience on IBM Cloud. Using the resources available to our researcher, we were able to acquire 10 participants for phone interviews.

Industries

IT
Finance
Healthcare
Consumer electronics
Weather forecasting

Dev Team Profile

Synthesizing our insights we were able to present a profile of a development team working together on a cloud solution.

DevOps Engineer

Managing GitHub issues
Managing DNS & pipelines
Testing code
Monitoring resources
Granting access

Architect

Managing environments
Running scripts
Migrating data centers
Automation work

Developer

Coding
Deploying apps
Setting environment variables
Viewing app logs
Running tests/testing UI
Monitoring running applications

Tools

Essential tools used to improve workflows and deployment process:

Roles

3 Developers
3 Software engineers
2 IT admins
1 Architect
1 Devops engineer

Cloud Providers

AWS
IBM Cloud
Google Cloud
Microsoft Azure
Pivotal
Cloud Foundry

Current Experience

Based on the insights from the research,  development teams are using a multitude of tools and solutions that support the building and deployment of their projects. Cloud providers are an essential source of how these teams organize their workflows. We compared this experience to the way IBM Cloud supports the phases of the project journey.

Interview Questions

How do enterprise dev teams define a project and the project's lifecycle?

How are teams building, testing and deploying to cloud?

Are teams looking to their cloud provider to help them organize their work?

Product Manager

PCI compliance work
Driving strategic alignment with team
Prioritizing work

Project Journey

The development team has 4 major milestones when building any given project to be deployed. Their workflow follows:

Insights

IBM Cloud offers many solutions to support development teams who need to build, test, and deploy their applications, however at the Kick-Off phase, the platform makes it difficult for teams to set-up, create, and define their projects.

Users do not understand how to organize their development workflows with IBM Cloud.

The dev team experience is dependent on:

1. Making it easier for teams to integrate dev tools and practices into their workflow

2. Providing flexibility with on-boarding 3rd-party integrations

3. Creating a unified view of workflows and connect services/tools

4. Enhancing support of local tools and CLI

Ideation

Need Statement

As a dev team member contributing to my project Kick-Off on IBM Cloud, I need to understand what it takes to build and deploy my team's projects on IBM Cloud, so that I understand how to navigate the many developer tools you offer.

Sketch 1: Wizard Tutorial

Creating a wizard experience that illustrates the necessary steps to bring your development teams’ workflow into IBM Cloud

Mockup 1: Wizard Tutorial

Introducing new users to an interactive tutorial that maps the project journey:

kick-off,
build,
test,
and deploy.

As defined by IBM Cloud.

Sketch 2: Singular Creation

Combining the multiple solutions for setting up your project in the Kick-Off phase, in a single creation flow.
Following the same logic presented in the wizard experience.

Mockup 2: Singular Creation

Working closely with our architects, I began to iterate on improving the granular interactions that required to setup and configure various tools and services such as: GitHub, Kubernetes, IBM CD, Slack, Pagerduty, etc.



Sensitive UI elements blurred per NDA. For access to a password protected prototype that shows platform UI, feel free to contact me.

Prototype

Upon first time use, users are guided on how to organize their development workflows into IBM Cloud.

Retrospective

This was a fascinating project for me to work on because it gave me new perspective on how I work and build products with my development teams. There are countless obstacles that create inefficiencies in the way development teams get to production, especially when building on IBM Cloud. However by understanding how to support the phases of product development, and with the positive testing results from the first-time walkthrough, end-users will quickly understand how flexible and adaptable our developer experience can be.