Social Media and Video Playback Apps have been pre-caching content since a long time when mobile data became cheap - and hence it makes sense for Jupiter as well to pre-cache details such as balances and transactions in the background to avoid loading them from the API each time the screen is opened.
Technically, this can be done by having a
"cache-refresh" flag in the database -
Whenever the flag is set to
true, it would load the data afresh, whereas when
false (when there is no change in transactional value), it would display the cached value.
This would help in the following ways:
Improve CX as no one likes loading screens every time.
Reduce number of API Calls to the server - Cost Reduction for the company in long term.
Help in situations where data connectivity is poor, and the entire app is rendered non-functional due to one particular endpoint/parameter not getting fetched.
Also, a CX friendly tip: Add a Random Pool of Strings of Financial Advice collected from the community/financial gurus as quotes in the loading screen - when the loading screen is actually needed.