Case study 03 — Anlytic
Finishing a job after the user has gone
Connecting a data source when the slow part completes long after the page has closed.
0
reliance on an open tab
Resumable
across restarts
Unattended
completion
The problem
Connecting a source runs from credentials through authentication and a first import, and only then is anything usable. That import is asynchronous and can take minutes or hours, which rules out doing the remaining work inside the request that started it.
How it fits together
What I did
Move it off the request
The slow half runs in the background from the moment setup completes, with backoff, protection against starting twice, and recovery if the process restarts.
Own the finish
When the upstream side is finally ready, the service completes the remaining setup by itself. The user returns to something already working.
Behave at the boundary
External failures are translated into something a person can act on, and outbound calls are paced to stay within limits.
The hard part
Every step had to survive a closed tab and a restart. Once you accept that nobody is watching, the work has to own its own completion, including knowing whether it already began.
Stack
Written at the level the reasoning survives. Internal specifics are left out on purpose.