My main project while working for Generac Clean Energy Solutions, a web app used for registering, monitoring and configuring IoT devices, primarily the Generac PWRcell inverter/battery system.
Mobile-friendly React-TypeScript app that interfaces with a backend ecosystem of Spring Boot Microservices.
This product is “installer-facing”, for solar installation companies that sell our products - so, it provides a more techincal user-experience than the average end-user of our products would want or need. Here’s a training video that explains in more detail.
Unfortunately, upon signing up for PWRfleet, there would not be much for you to see without registering a product. But here is the link, just so that you know I’m not making this up.
Technologies Used In Project
- Redux/RTK Query for asynchronous global state
- Material UI for components and theme
- ChartJS for complex data visualizations
- Unleash for feature toggles/incremental rollout of features
- Storybook for designing and documenting components
- Jest for unit tests
- AWS Cognito for authentication
- AWS and Vercel for hosting
- CircleCI for builds
Major Features & Tech Debt Initiatives That I’ve Delivered
-
Integrate with Salesforce API to provide our customers with the ability to create and view support tickets.
-
Complete re-write of IoT device performance charts using ChartJS, which included writing a custom plugin with the JS Canvas API, and writing an algorithm for achieving ideal multi-Y-axis behavior.
- Replace clunky systems for making API calls and injecting response into the global state with RTK Query hooks, configure intelligent client-side caching and refreshing of stale data.
- Design and implement a custom React hook to plug into charts for better handling of date ranges and timezones, and better determination of data granularity.