WorkUpwork
Live account data in a hosted Help Center
An OAuth 2.0 client for Zendesk Guide

The problem
Zendesk Guide personalises a Help Center with user tags pushed through SSO. Those tags refresh only when a session is created or renewed, so the Help Center showed content for the account as it was at login, not as it is now.
What I built
As a proof of concept for real-time personalisation, I led the team that built a JavaScript client library for Upwork's OAuth 2.0 application, running inside the Zendesk Guide theme.
- It authenticates Help Center users against Upwork.
- It retrieves their data from the Upwork API in real time.
- I wrote the integration documentation, so later implementations didn't start from scratch.
In 2021 I advised Upwork's community engineering team on applying the same pattern to Khoros.

What changed
Live account data replaced stale session tags, allowing real-time tier gating and authenticated API actions directly in the Help Center theme.
"Asif played a key role in enhancing Zendesk Guide features, improving user experience, and implemented Upwork OAuth2 for API authentication in the Help Center... His technical expertise and innovative mindset made a lasting impact on our team."
— Joji Maekawa, Engineering Manager, Customer Experience, Upwork
What I took from it
A hosted platform's built-in identity is a snapshot. If the experience depends on current state, you have to go and get it. Two years later the same principle shaped the GraphQL integration.