Case Study: Building a Scalable Internal Dashboard for an IoT Startup
An early-stage IoT startup — currently operating in stealth mode — approached us with a critical need: an internal dashboard application to support their engineering and customer support teams. Their goal was to monitor platform activity and navigate a deeply interconnected and sophisticated data model with ease.
Technical Requirements and Architecture
From the outset, the client had a clear mandate: the application must run entirely on AWS Lambda functions. After a thorough discovery process, we recommended a Single-Page Application (SPA) architecture built with the Vue.js framework. Vue enabled rapid prototyping, allowing us to deliver a proof-of-concept quickly and iterate toward the final product.
Authentication was limited to Google and Apple accounts, which we implemented using AWS Cognito for backend identity management and AWS Amplify to streamline frontend integration.
Tackling the Real Challenge: Data Architecture
While the technology stack was straightforward, the real complexity lay in the data architecture. The client’s data model was both general-purpose and highly interconnected—nearly every entity was linked to every other. This posed a significant design challenge, but we turned it into a strength by making the interface highly interactive: nearly every element in the app is clickable or expandable, encouraging exploration and discovery.
To prevent information overload—especially for customer support users—we designed a clean visual hierarchy and employed progressive disclosure techniques. This kept the interface light, intuitive, and even enjoyable to use. Meanwhile, engineers could drill down through multiple layers to access the granular data needed for troubleshooting platform or device issues.
Backend Integration and Performance
We developed custom APIs to handle intensive operations via Lambda functions, while most data was accessed through the client’s existing GraphQL API. This hybrid approach ensured both performance and flexibility.
Final Touches and Outcome
To align with the client’s playful and distinctive brand, we added subtle design flourishes that brought a human touch to the experience. These details helped transform a utilitarian tool into something delightful.