Made orchestration processes easier for developers
I led the UX design enhancement initiatives for the orchestration services products, Cloud Workflows, a fully managed workflow automation service that lets customers define, automate, and orchestrate complex business processes.
I also worked with cross function teams to implement Ai learning capabilities for new Workflows customers event-driven architecture. Including, Eventarc a standardized solution for managing state changes (events) between decoupled micro-services, eliminating the need for implementing, customizing, or maintaining the underlying infrastructure.
The projects aim is to improve user acquisition by simplifying the learning curve of YAML/ JSON for Cloud Workflows code editor and enhance new features including Ai capabilities to close the gaps customers wanted to see in each application potentially increasing conversions by 20-30%.
My role
UX Designer
Visual Design
Dynamic Prototyping
Timeline
8 months
Teams
40 Software Engineers
2 Project Manager
1 UX Researcher
Product: Cloud Workflows - Project 1
I had never used Cloud Workflow before, so In order to understand the process I asked the dev team to walk me through the entire process of implementing a trigger and what are some of the problems before beginning to create any designs and research.
After observing the research we noticed that improvements to the consumer experience were necessary. According to the qualitative research, 35% of new Workflow users had trouble initiating and carrying out a trigger because the editor didn't do a good job of alerting users to issues with their code that might arise right away or to potential typos that might occur before an execution. This implies that if you click "execute," it won't deploy and will give an error. quite annoying.
Through research interviews, I was also able to learn more about the attitudes of certain developers toward reading documentation, including how they preferred to use it in conjunction with the editor and other resources to help diagnose issues and determine the best course of action for meeting their needs.
Developers prefer to work and not source documentation because it slows their flow and efficiency.
10% of the developers got confused and just left to look elsewhere after a few minutes with no luck deploying a Workflow.
The animation below Illustrates a glimpse of the user experience of the new feature that is working to assist users while the code.
Problem
IT/IS
Finance
Facilities
Legal
HR
Product Management
Purchasing
Operations
Sales
Marketing
Security
Cloud Workflows serve many use cases. They make sense wherever you need processes to run in order, wait for something before something else can happen, re-try for a certain time in case of failure, handle timeouts properly, etc.
Some of the use cases:
While this appears to be a simple process, there are multiple potential failure spots. And, hate to break it to you, but the Cloud is just not that reliable!
Every time we rely on the erratic nature of an internet connection, we risk having it cut off. FTP Servers, depending on their configuration, can be slow, particularly when dealing with concurrent queries. Failures are common in GCP, especially without external dependencies like as FTP servers.
What is Cloud Workflows? It is a orchestration engine that enables atomic or loosely coupled processes to run in order.
Who uses it: Service architects, developers
Benefits: Direct API integration i.e. Pub/Sub, BigQuery, Firestore, Dataform or plenty of API support outside of Google Cloud Platform
Powerful failure, waiting and retry handling for failsafe processes.
A server waits until an event occurs then a message is sent. A message is the signal to do a command or task.
For example, if I make a purchase online and you require an invoice, with (Workflows trigger is successfully implemented), the diagram below depicts what can happen assuming everything goes smoothly and the consumer is satisfied because they have received their invoice.
How does it work
Scenario
When a Workflow is started and triggers a message.
Workflows then waits for a certain time for a callback to receive a request(Buyer purchase).
When a purchased encryption is complete, it sends a request to the merchant indicating a success of failure.
If fail, Workflow can either exit or retry up to ‘X’ times.
If success, Workflows starts to generate the invoice to send to customers email.
The pros of this that the flow logic is centralized for the developer to program each trigger individually and have control.
However, if you're new (green developer) to Cloud Workflows, configuring a Workflow trigger to accomplish your goals can be a steep learning curve. This is where my expertise comes in: identifying the problem and implementing data-driven changes.
While working on the UX enhancements Google’s Duet Ai was undergoing some beta test internally so, I took this opportunity to learn about Ai models capabilities and how I could leverage some of the features to help our users in Cloud Workflows using Duet Ai machine learning potential.
For example a developer can use Duet Ai to create a unit test for a newly written piece of code.
This can assist him/her in making sure the code is operating properly. This is beneficial because from our quantitative data we read that our customers struggled with tabbing and spacing when writing YAML which led to errors and testing before deploy would reduce debugging time and increase deployments. It was important to prioritize this features in the sprint in order to test for customer satisfaction.
I worked with project manager, Ronak to leverage Duet Ai in the code editor to help developers learn how to use YAML easier and faster to execute tasks. By using the current documentation APIs with the Duet Ai model we planned to use it to service new customers assisting them in Workflows many capabilities.
What I did and why
To describe the problem and gain stakeholder buy-in, I began by asking internal and customer engineers about their goals and pain points while utilizing YAML/JSON in the editor view.
From quantitive analysis I saw that 65% of users are overall satisfied with the current Workflows experience.
The number 1 complaint was the steep learning curve for YAML and JSON.
Its very easy to make mistakes using the editor because of ‘Tabbing/Spaces’ syntax protocol.
The code editor supports real-time syntax validation only for basic YAML syntax, but doesn’t support validation for Workflows specific syntax for example steps parameters, and keywords.
Research
Working with Googles engineers and gaining an understanding of the pain-points together with the project manager, I developed a weekly sprint process to gradually implement the improvements in light of the user console's limitations.
The next stage was to set up a workshop with the cross-functional team leaders to identify the constraints and lay out the objectives using interactive prototype mockups to provide proof of ideas. Here is glimpse of most of the week below…
Opportunities
Although I’m unable to share the final designs. I worked with the PM and engineers to create an editor with an AI feature on the side panel, balancing old and new design patterns for quick shipping and including user-friendly content.
Results
As the deadline was looming I made the decision to narrow down the concepts to two designs. In order to expedite the process, I reached out to team leads to secure their stakeholder support prior to implementing developer handoff. It was a wise choice to seek advice because I was ignorant of a certain design pattern that would have required expensive redesign.
Challenges I faced
I led the design enhancement for the advanced version of Cloud Eventarc. Which was discovered as a business opportunity from observational studies with architects and engineers Interviewing them about what they would like to see in a product that empowers their workload, allowing them to serve their customers faster and scale appropriately. [With respect to my agreement at Google this is all I’ll share.]
The animation below is for demo reference only.
Product: Cloud Eventarc - Project 2
Treat it like a conversation you have in a room with thousands of people talking amongst themselves. You’re trying to get your message across and others want to consume our translate your message in different languages so others can understand.
Eventarc is a crucial tool for connecting various parts of an application, enabling scalability, reliability, and efficiency. It triggers Cloud Run services, sends notifications, and triggers Cloud Storage buckets or CRM systems.
How & Why is it important?
Initially, designing for the cloud seemed daunting. You don't need to know everything in the first two months. Fortunately, I had a terrific team that was patient and offered a lot of insights, research documentation, and encouraged me to fail in order to understand the difficulties and the principles of what we were attempting to achieve for our engineers and global customers.
With good feedback from stakeholders, we kept lines of communication open with stakeholders throughout the design process in order to get their feedback and make sure our choices were in line with the objectives of the project. Stakeholders responded very favourably to our design ideas because of the collaborative approach that promoted trust and a sense of ownership.
I also would like to thank my Google mentor Wen Xiong and foundation services team for helping me build me confidence and showcase my skills and leadership to stakeholders and cross-platform managers.