Wind River Studio

Redesigning notifications for faster decision-making and improved focus in high-risk systems

B2B Product Design

Usability testing

Developer Environments

Wind River Studio is a platform that helps engineers manage complex software systems used in critical industries like aerospace and telecom. The notification system alerts users when something needs their attention—like a failed test or important update.

I led a redesign effort to reduce notification overload, improve clarity, and eliminate redundant features ahead of the next product release.

Wind River Studio is a platform that helps engineers manage complex software systems used in critical industries like aerospace and telecom. The notification system alerts users when something needs their attention—like a failed test or important update.

I led a redesign effort to reduce notification overload, improve clarity, and eliminate redundant features ahead of the next product release.

Wind River Studio is a platform that helps engineers manage complex software systems used in critical industries like aerospace and telecom. The notification system alerts users when something needs their attention—like a failed test or important update.

I led a redesign effort to reduce notification overload, improve clarity, and eliminate redundant features ahead of the next product release.

project Background

project Background

project Background

Overview

Overview

Overview

At Wind River Systems, I led the end-to-end research and design of a redesigned internal notification system used by senior engineers working on mission-critical projects.

Impact: Directly shaped Wind River Studio's next release roadmap by eliminating unnecessary complexity, reducing cognitive load, and streamlining how engineers receive critical system alerts.

At Wind River Systems, I led the end-to-end research and design of a redesigned internal notification system used by senior engineers working on mission-critical projects.

Impact: Directly shaped Wind River Studio's next release roadmap by eliminating unnecessary complexity, reducing cognitive load, and streamlining how engineers receive critical system alerts.

At Wind River Systems, I led the end-to-end research and design of a redesigned internal notification system used by senior engineers working on mission-critical projects.

Impact: Directly shaped Wind River Studio's next release roadmap by eliminating unnecessary complexity, reducing cognitive load, and streamlining how engineers receive critical system alerts.

Role

Role

Role

UX Designer

UX Designer

UX Designer

Research

Research

Research

Prototyping

Prototyping

Prototyping

Outcome

Outcome

Redesigned protoype

Redesigned protoype

Redesigned protoype

Dev implementation list

Dev implementation list

Dev implementation list

Team

Team

UX Designer (Myself + 1)

UX Designer (Myself + 1)

UX Designer (Myself + 1)

Director of UX

Director of UX

Director of UX

Type

Type

B2B, internal tools

B2B, internal tools

B2B, internal tools

PROBLEM

PROBLEM

PROBLEM

Notification Overload: When Critical Alerts Get Lost in the Noise

Notification Overload: When Critical Alerts Get Lost in the Noise

Notification Overload: When Critical Alerts Get Lost in the Noise

Engineers struggled with notifications spread across three competing layers:

Popovers: Transient workspace alerts

Notification Panel: Quick-access recent notifications

Notification Center: Complete notification history


As a result, critical alerts were missed while non-urgent ones interrupted workflow.

Engineers struggled with notifications spread across three competing layers:

Popovers: Transient workspace alerts

Notification Panel: Quick-access recent notifications

Notification Center: Complete notification history


As a result, critical alerts were missed while non-urgent ones interrupted workflow.

Engineers struggled with notifications spread across three competing layers:

Popovers: Transient workspace alerts

Notification Panel: Quick-access recent notifications

Notification Center: Complete notification history


As a result, critical alerts were missed while non-urgent ones interrupted workflow.

Popovers

Popovers

Popovers

Popovers are transient workspace alerts and updates sent to developers in Wind River Studio.

Popovers are transient workspace alerts and updates sent to developers in Wind River Studio.

Popovers are transient workspace alerts and updates sent to developers in Wind River Studio.

Notification Panel

Notification Panel

Notification Panel

The notification panel allows WR Studio users to see a list of recent notifications by clicking the bell icon.

The notification panel allows WR Studio users to see a list of recent notifications by clicking the bell icon.

The notification panel allows WR Studio users to see a list of recent notifications by clicking the bell icon.

Notification Center

Notification Center

Notification Center

The Notification Center acts as a long-term notification archive that Wind River Studio users can access if they missed a notification or need to review historical logs.

The Notification Center acts as a long-term notification archive that Wind River Studio users can access if they missed a notification or need to review historical logs.

The Notification Center acts as a long-term notification archive that Wind River Studio users can access if they missed a notification or need to review historical logs.

Challenges

Challenges

Challenges

01

01

01

Users missed critical alerts or were interrupted by non-urgent ones.

Users missed critical alerts or were interrupted by non-urgent ones.

Users missed critical alerts or were interrupted by non-urgent ones.

02

02

02

Redundant messages showed up across layers, creating confusion.

Redundant messages showed up across layers, creating confusion.

Redundant messages showed up across layers, creating confusion.

03

03

03

Maintaining all three layers increased dev time and complexity.

Maintaining all three layers increased dev time and complexity.

Maintaining all three layers increased dev time and complexity.

Research Goals: Validating User Needs vs. System Complexity

Research Goals: Validating User Needs vs. System Complexity

Research Goals: Validating User Needs vs. System Complexity

With a major system update on the horizon, I was tasked with validating whether the Notification Center was worth keeping and how the entire system could be improved for speed, signal clarity, and control.

With a major system update on the horizon, I was tasked with validating whether the Notification Center was worth keeping and how the entire system could be improved for speed, signal clarity, and control.

With a major system update on the horizon, I was tasked with validating whether the Notification Center was worth keeping and how the entire system could be improved for speed, signal clarity, and control.

Three key questions guided my research:

Necessity: Can we eliminate the Notification Center?

Retrieval: When do engineers need dismissed notifications?

Priority: How do engineers distinguish between urgent vs. non-urgent alerts?

Three key questions guided my research:

Necessity: Can we eliminate the Notification Center?

Retrieval: When do engineers need dismissed notifications?

Priority: How do engineers distinguish between urgent vs. non-urgent alerts?

Three key questions guided my research:

Necessity: Can we eliminate the Notification Center?

Retrieval: When do engineers need dismissed notifications?

Priority: How do engineers distinguish between urgent vs. non-urgent alerts?

The notification architecture had become a dual burden:

The notification architecture had become a dual burden:

The notification architecture had become a dual burden:

For users: Decision fatigue when triaging alerts across three separate layers, increasing the risk of overlooking system-critical updates

For development: Significant technical debt and feature duplication that slowed V2 development velocity

For users: Decision fatigue when triaging alerts across three separate layers, increasing the risk of overlooking system-critical updates

For development: Significant technical debt and feature duplication that slowed V2 development velocity

For users: Decision fatigue when triaging alerts across three separate layers, increasing the risk of overlooking system-critical updates

For development: Significant technical debt and feature duplication that slowed V2 development velocity

01

01

01

Notification Center was redundant

Notification Center was redundant

Notification Center was redundant

Most users preferred using the Notification panel and test/pipeline logs

Most users preferred using the Notification panel and test/pipeline logs

Most users preferred using the Notification panel and test/pipeline logs

02

02

02

Panel: Collapsed view preferred over expanded

Panel: Collapsed view preferred over expanded

Panel: Collapsed view preferred over expanded

users wanted scannable alerts with the option to drill down

users wanted scannable alerts with the option to drill down

users wanted scannable alerts with the option to drill down

03

Mixed opinions on Snooze function

Mixed opinions on Snooze function

Snooze function was unclear or disliked: Many wanted a "focus mode" to silence a notification type for the day.

Snooze function was unclear or disliked: Many wanted a "focus mode" to silence a notification type for the day.

Problem Statement

Problem Statement

How might we give engineers more control over how, when, and where they receive alerts, so they stay focused without missing what matters?

methodology

methodology

Research Approach: Getting Inside Engineers' Decision-Making Process

Research Approach: Getting Inside Engineers' Decision-Making Process

To evaluate the effectiveness and usability of the current notification system, I conducted a structured study using:

To evaluate the effectiveness and usability of the current notification system, I conducted a structured study using:

Usability Testing

Usability Testing

I prompted participants to carry out a series of structured tasks that mirrored real-life notification scenarios in a working prototype of Wind River Studio.

Each session was moderated using a think-aloud protocol, encouraging users to verbalize their thought process.

I prompted participants to carry out a series of structured tasks that mirrored real-life notification scenarios in a working prototype of Wind River Studio.

Each session was moderated using a think-aloud protocol, encouraging users to verbalize their thought process.

Participants included Field application engineers, test automation architects, systems architects.

These participants worked on high-risk, high-impact systems. Many were responsible for keeping pipelines, builds, and test environments stable for aerospace, telecom, and industrial-grade products.

Participants included Field application engineers, test automation architects, systems architects.

These participants worked on high-risk, high-impact systems. Many were responsible for keeping pipelines, builds, and test environments stable for aerospace, telecom, and industrial-grade products.

Key Task Themes

Key Task Themes

01

01

Interpret a popover notification and identify what action (if any) should be taken.

Interpret a popover notification and identify what action (if any) should be taken.

02

02

Explore collapse/expand states and determine whether additional context is discoverable.

Explore collapse/expand states and determine whether additional context is discoverable.

03

03

Compare the Notification Panel and Notification Center to determine preferred access patterns.

Compare the Notification Panel and Notification Center to determine preferred access patterns.

04

04

Engage with Settings and Advanced Overrides to adjust delivery preferences.

Engage with Settings and Advanced Overrides to adjust delivery preferences.

Affinity Mapping

Affinity Mapping

Post-testing, I facilitated a synthesis session using affinity mapping with the Director of UX, another designer, and a senior UX researcher. We clustered recurring themes, pain points, and opportunities across all sessions to identify actionable patterns.

Post-testing, I facilitated a synthesis session using affinity mapping with the Director of UX, another designer, and a senior UX researcher. We clustered recurring themes, pain points, and opportunities across all sessions to identify actionable patterns.

research findings

research findings

Findings Overview

Findings Overview

Through usability testing, it was evident that the notification center was redundant for Wind River Studio users. Some other aspects had mixed opinions, but overall, users wanted low distraction and the ability to customize their alerts based on the type of work they were doing.

Through usability testing, it was evident that the notification center was redundant for Wind River Studio users. Some other aspects had mixed opinions, but overall, users wanted low distraction and the ability to customize their alerts based on the type of work they were doing.

01

01

Notification Center was underused and caused confusion

Notification Center was underused and caused confusion

Most users preferred using the Notification panel and test/pipeline logs

Most users preferred using the Notification panel and test/pipeline logs

Most users preferred using the Notification panel and test/pipeline logs

02

02

Panel: Collapsed view preferred over expanded but lacked context

Panel: Collapsed view preferred over expanded but lacked context

Users wanted scannable alerts with the option to drill down

Users wanted scannable alerts with the option to drill down

Users wanted scannable alerts with the option to drill down

03

03

Users wanted control over when, how, and where alerts are delivered

Users wanted control over when, how, and where alerts are delivered

Snooze function was unclear or disliked: Many wanted a "focus mode" to silence a notification type for the day.

Snooze function was unclear or disliked: Many wanted a "focus mode" to silence a notification type for the day.

Snooze function was unclear or disliked: Many wanted a "focus mode" to silence a notification type for the day.

design interventions

design interventions

Strategic Design Solutions: Simplifying Without Sacrificing Control

Strategic Design Solutions: Simplifying Without Sacrificing Control

01

Remove Notification Center

Remove Notification Center

Users preferred the Notification Panel + logs. Notification Center was underused and caused confusion.

Users preferred the Notification Panel + logs. Notification Center was underused and caused confusion.

💬 “I never go there. If I miss something, I check the logs anyway.”

💬 “I never go there. If I miss something, I check the logs anyway.”

Profile

Notifications

Preferences

/

Notification Center

app central

7

Notification Center

/

settings

Sort: Date

Include dismissed

dismiss all

Today

1 min ago

8:58 AM

Test Complete

Windshield_Regression_Test_Lorem_Ipsum_Dolar_Sit_Amet_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

8 hours ago

12:58 AM

Pipeline Abort

Vehicle_ABC_Deployment_23.09_Lorem_Ipsum_Dolar_Sit_Amet_Consectetur_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

open Pipeline results

open results

8 hours ago

12:58 AM

Test Complete

Windshield_Regression_Test_Lorem_Ipsum_Dolar_Sit_Amet_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

Failure at temp.app.route line 127

123

124

125

126

127


128

129

130

temperature = data.get('temperature')
humidity = data.get('humidity')

if temperature is None or humidity is None:
return jsonify({"error": "Missing temperature or humidity data"}), 400

try:
with sqlite3.connect("iot_data.db") as con:
cur = con.cursor()
cur.execute("INSERT INTO data (temperature, humidity) VALUES (?, ?)", (temperature, humidity))
con.commit()
return jsonify({"message": "Data successfully stored"}), 201

except Exception as e:
print(str(e))
return jsonify({"error": "An error occurred while storing data"}), 500

@app.route('/api/data', methods=['GET'])
def get_data():
try:
with sqlite3.connect("iot_data.db") as con:
con.row_factory = sqlite3.Row
cur = con.cursor()
cur.execute("SELECT * FROM data")
rows = cur.fetchall()
data = [dict(row) for row in rows]
return jsonify({"data": data}), 200

except Exception as e:
print(str(e))
return jsonify({"error": "An error occurred while retrieving data"}), 500


open Pipeline results

open results

8 hours ago

12:58 AM

Test Complete

Windshield_Regression_Test_Lorem_Ipsum_Dolar_Sit_Amet_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

open Pipeline results

open results

Yesterday

Yesterday

12:58 AM

Test Complete

Windshield_Regression_Test_Lorem_Ipsum_Dolar_Sit_Amet_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

Yesterday

12:58 AM

Test Complete

Windshield_Regression_Test_Lorem_Ipsum_Dolar_Sit_Amet_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

Yesterday

12:58 AM

Test Complete

Windshield_Regression_Test_Lorem_Ipsum_Dolar_Sit_Amet_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

Yesterday

12:58 AM

Test Complete

Windshield_Regression_Test_Lorem_Ipsum_Dolar_Sit_Amet_2022-12-14 T21:09

Notification message Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eget risus vitae massa semper aliquam quis mattis quam.

Logs deemed unnecessary

Participants stated that test logs, test and pipeline logs could be retrieved from their code environment

02

Refine Collapsed View

Refine Collapsed View

The collapsed view lacked actionable context, and users disliked needing to expand every notification just to triage.

The collapsed view lacked actionable context, and users disliked needing to expand every notification just to triage.

💬 “I prefer the collapsed view. It's easier to see at a glance if anything needs my attention.”

💬 “I prefer the collapsed view. It's easier to see at a glance if anything needs my attention.”

03

Add advanced notification settings with delivery methods and overrides

Add advanced notification settings with delivery methods and overrides

Users wanted to control when, how, and where they receive alerts.

Users wanted to control when, how, and where they receive alerts.

💬 “I’m not going to want to get all the notifications from all the pipelines on my team. That’s noisy.”

💬 “Once it’s running, if it fails, I want an SMS right away. I can restart it sooner.”

💬 “I’m not going to want to get all the notifications from all the pipelines on my team. That’s noisy.”

💬 “Once it’s running, if it fails, I want an SMS right away. I can restart it sooner.”

04

Enhance visual prioritization

Enhance visual prioritization

Visual cues for severity were too subtle. The thin red bar didn’t communicate urgency well.

Visual cues for severity were too subtle. The thin red bar didn’t communicate urgency well.

💬 “I almost missed that this was critical — the red line’s too easy to ignore.”

💬 “I almost missed that this was critical — the red line’s too easy to ignore.”

Reflection and personal growth

Reflection and personal growth

Leadership and Ownership

Leadership and Ownership

This project allowed me to take ownership from research through to actionable change. I navigated time constraints by:

  • Recruiting quickly across internal teams

  • Running tests efficiently over 2 weeks

  • Synthesizing data fast enough to support decision-making in real-time

This project allowed me to take ownership from research through to actionable change. I navigated time constraints by:

  • Recruiting quickly across internal teams

  • Running tests efficiently over 2 weeks

  • Synthesizing data fast enough to support decision-making in real-time

Skills Demonstrated

Skills Demonstrated

  • UX Research Strategy & Facilitation

  • Cross-functional Collaboration

  • Internal Tool Design (B2B)

  • Notification System Design

  • Rapid Synthesis & Prioritization

  • UX Research Strategy & Facilitation

  • Cross-functional Collaboration

  • Internal Tool Design (B2B)

  • Notification System Design

  • Rapid Synthesis & Prioritization

Takeaways

Takeaways

This project taught me how to balance deep research insights with the realities of technical implementation in a fast-moving B2B environment.

This project taught me how to balance deep research insights with the realities of technical implementation in a fast-moving B2B environment.

CONCLUSION

CONCLUSION

Impact

Impact

01

Development streamlined

Development streamlined

Scrapping Notification Center reduced scope and saved time

Scrapping Notification Center reduced scope and saved time

02

Settings panel redesigned

Settings panel redesigned

Added severity levels, delivery method controls, and override options

Added severity levels, delivery method controls, and override options

03

Implementation

Implementation

Implementation started within weeks: Findings directly informed dev priorities

Implementation started within weeks: Findings directly informed dev priorities

Reflection and personal growth

Leadership and Ownership

This project allowed me to take ownership from research through to actionable change. I navigated time constraints by:

  • Recruiting quickly across internal teams

  • Running tests efficiently over 2 weeks

  • Synthesizing data fast enough to support decision-making in real-time

Skills Demonstrated

  • UX Research Strategy & Facilitation

  • Cross-functional Collaboration

  • Internal Tool Design (B2B)

  • Notification System Design

  • Rapid Synthesis & Prioritization

Takeaways

This project taught me how to balance deep research insights with the realities of technical implementation in a fast-moving B2B environment.