July 30, 2021
Focus on scaling and performance.
From the very beginning of the COVID pandemic, Way to Health (W2H) has worked with Penn Medicine to implement numerous remote-monitoring programs across the health system. In implementing these programs, we scaled the number of people enrolled in a W2H program exponentially - going from ~70,000 to ~875,000 participant accounts in one year. This was a massive accomplishment for W2H, but it also meant that we needed to scale the platform to accommodate the change in user volume. Therefore, we focused our efforts in July 2021 on improving W2H performance at scale.
The most impactful change we made was the incorporation of Scout APM to help us troubleshoot slow pages and backend operations. We were able to identify areas in W2H that needed improvements, and map out which issues to focus on for the month. Many of these performance improvements helped us speed up user access to data-heavy pages in W2H, as well as increase the speed at which data is processed in our queues. We plan to continue using Scout APM to monitor W2H’s performance, and to make further improvements as needed.
Below is a summary of the enhancement work and bug fixes completed in July 2021.
Enhancements
Performance
Implement Scout APM for the platform
Scale start-events task to be able to process multiple events in parallel
Web performance: fewer queries for navigation
Web performance: device stats
Web performance: inbound twilio webhook
Web performance: payment feed
Web performance: Allow easier MRN filtering for API requests
Improve manage data and settings performance
Split out Fitbit processing into more than 2 queues
Integrations
TrueMotion (Way to Drive) - Enrollment, Unenrollment and data connection established
Add subscription to make data syncing from Omron blood pressure cuff faster
Updated Withings connector to use new endpoints
Enrollment:
Relax password strictness on ppt portal
Update participant’s profile based on survey responses
Misc
Message metadata in inbox should show timestamp with seconds
Participant Data variables can be displayed in text if failed to evaluate
Bug fixes
Device Authorization enrollment step broken
Survey links in portal don’t translate
ClinCard payment failures aren’t generating software incidents
Rating questions not serializing correctly
Event calendar broken on participant view
Epic status filter not working on Manage Data
Leaderboard variable does not store it’s value in the variable ledger
Logic sets don’t properly display conditions when data source changed
Event overview display for lotteries
No clarification for invalid usernames during account creation