ONenergy Mobile
Built and delivered a React Native mobile app that gives homeowners real-time visibility into household electricity consumption at individual appliance level, powered by IoT sensors with live updates.
Homeowners had no visibility into how individual appliances contributed to their electricity bill until the monthly statement arrived. The IoT hardware produced sensor readings every 2 seconds per appliance across up to 119 appliances per household, and the mobile client had to present this live data clearly without overwhelming the user or degrading device performance. I was responsible for delivering the full mobile application from initial planning through Play Store release.
“Homeowners only discovered they had overspent on electricity when the bill arrived at the end of the month.”
Owned the full mobile development lifecycle as the primary React Native developer, from breaking down business requirements and system design through to production deployment and client handover.
Designed full mobile architecture
Defined component boundaries, state management approach, and data flow using Expo, Zustand, and REST API integration to keep the codebase consistent and maintainable as the product grew.
Implemented secure authentication
Built the authentication layer using Expo Secure Store before any screens were developed, ensuring token storage and session handling worked consistently across the entire app.
Integrated live IoT appliance data
Connected the app to REST API endpoints for live appliance consumption data, handling loading states, error recovery, and refresh timing to keep the UI accurate under varying network conditions.
Built energy consumption visualization
Built interactive charts showing real-time and historical electricity consumption per appliance, balancing data accuracy with rendering performance.
Resolved rendering performance under high-frequency updates
Diagnosed and fixed rendering bottlenecks from frequent sensor updates, optimizing how and when components re-rendered to keep the UI smooth and responsive.
Led cross-functional collaboration across design and product
Translated UI designs into production mobile interfaces and worked with business analysts and the product manager to break down client feedback into clear development tasks.
Owned build pipeline, release, and client handover
Configured EAS Build for Android with automated signing and versioning, wrote deployment documentation, and supported the client team through setup and production issue resolution.
600+
Households Monitored
Active households with real-time appliance-level monitoring at launch
2s
Live Update Interval
IoT sensor readings refreshed per appliance across all households
119
Appliances Tracked
Per household via IoT sensors across the monitoring system
Optimized
Rendering Performance
Fixed rendering bottlenecks from high-frequency IoT sensor updates
- 1
Early architecture decisions determine how the product scales. Defining structure early meant every new feature fit naturally into the existing codebase without revisiting core decisions as the product grew.
- 2
Auth state is an architecture decision, not an afterthought. Handling session management in one place kept individual screens focused on their own responsibilities without repeating authentication logic.
- 3
Clarifying requirements early keeps the team building the right thing. Resolving client feedback with business analysts before development started prevented features from being built in the wrong direction.
- 4
High-frequency data requires a deliberate rendering strategy. How often and when the UI updates directly affects whether the app feels responsive or starts to slow down under frequent sensor updates.