Due to privacy concerns, I can't share this project in its entirety. If you would like to see this work in more detail please feel free to reach out to me at renzheng112@gmail.com :)
About
I worked on the Abound design team - a subsection of Carrier’s Digital Foundry. The product that the team works on is a platform that aggregates and analyzes sensor data and provides visualizations and insights that help maintain building health and efficiency. This includes metrics and solutions on air quality, energy performance and usage, greenhouse gas emissions, alerting, asset management, and maintaining green building standards.
What I Did - TLDR
Update Abound’s component + pattern library
Audit the ecosystem design files for existing outdated components and potential new patterns. Organized by type, usage, and subcomponents.
Build out system of over 50 patterns (including interactions, charting, data visualization, illustration, page sections).
Test components for consistency, responsiveness, ensuring that they are consistent with Abound specific brand, colors, and typography. Iterated based on feedback from designers.
Centralize the patterns in table of contents and create guidelines and best practices to help others use and maintain the system.
Build new features to extend Abound to small business owners.
Quickly gather business requirements, design wireframes, mockups, and research-specific stimuli for new features targeted toward small-business owners.
Use newly built design system to pave transition to new components.
What I Learned
Designing for designers, balancing rules vs. creativity
I learned what it was like to build for other designers as the user, which still involves going through the design process. It was important to rigorously test the components to make sure they are consistent, responsive, and to get feedback from the team and iterate. The feedback led to a balancing act between building versatile components with lots of properties but dialing back when it tried to abstract away too many decisions. So I had to keep asking myself how can we confine decision-making to create consistent, quality designs, while still giving autonomy to the designer to use their eye and expertise? We should be able to trust the system but in the end it’s the people who do the designing.
Handling complexity with intentionality
The work was filled with complex terminology, scientific units, an ontology of connected physical equipment and digital devices that come with large sets of data. It was important to not get overwhelmed, ask good questions, and trust that time and experience will lead to efficacy in how these concepts are related. Having questions and documentation prepared ahead of time was also immensely helpful. Often times, our team would be designing on sand. It was the process of designing - making something tangible and showing to others - that got a lot of questions answered. Through continuous experimentation and mistakes, we’d build up the correct mental model to design from.
Proactively solving problems
My team members were all smart, curious, driven to solve the complex problems that arose from their everyday work. I learned from them and began to take leadership on advocating the new design system and creating a centralized resource. Rather than voicing complaints, I’d show how the issue might be addressed through real examples.
Overall... I learned a lot about the process of creating, maintaining, using design systems out in the wild, as well as how to build a strong community.