Developer role · technical exercise
Below is a short brief on our systems and then a problem to work through. Write up how you would handle it and send it back to us within the hour. There is no model answer and nothing to install - we are interested in how you think, not in catching you out.
Please draft in Word, Google Docs or a text file and paste back in at the end. This page saves what you type on your own device as you go, but a browser is a browser - do not risk an hour's work to it. When you are finished, press Copy my answers and paste into your reply, or use Download as a text file and attach it.
Members apply through our portal, our staff assess the application, and the systems in between move the work along and keep the member informed. Each box is a separate product with its own login - nothing here is a monolith, and the joins between the boxes are where the work lives.
You are not expected to have used any of these. Several are niche. Read the shape, not the brand names - the last column is the part worth noticing.
| System | What it does | What it is, technically | If something is wrong here |
|---|---|---|---|
| The member portal | The member-facing web app. Where a member logs in and submits a licence application. | React + Vite, hosted on Vercel. | Ordinary development - code, deploys, previews. |
| Supabase | Stores the member and their application. The actual record. | Hosted Postgres, with an API and a web console. | Queryable directly. Tells you whether the data exists at all. |
| Memberstack | Membership and identity - signup, login, plan, what a member is allowed to see. | Third-party SaaS. Configured, not coded. | A permissions fault can look exactly like missing data. |
| Zapier | The glue. Moves records between the portal, SharePoint and customer.io when something happens. | No-code automation. Each "Zap" is a trigger plus steps. | Can be switched off, erroring or throttled without anyone being told. |
| customer.io | Sends members email as their application progresses. Decides when, based on triggers. | Lifecycle messaging SaaS. Campaigns and templates. | "I was never notified" lands here, not in the portal. |
| SharePoint + Excel | Where our staff actually assess a licence. Feeds an internal reporting dashboard. | Microsoft 365. A business process, not a product we build. | Staff work here all day. Changes affect their routine. |
Different contractors, different conventions, thin documentation, some of it out of date. That is the normal state of it, not a crisis - and it is the environment the role exists to work in.
The Zapier automations and customer.io were set up by a contractor whose engagement finished in October 2026, and handover documentation is still being compiled. So "who do I ask about this?" is a real question here, with a less tidy answer than you would like.
A member emails to say their licence application did not show up in the portal. Nobody else has reported it. It is your ticket.
Walk us through how you would handle it, from that email to the moment you are confident it is sorted.
Your own words, your own structure. There is no required format and no length we are looking for - a page is plenty. Tell us what you would actually do.
Write it however makes sense to you. Bullets are fine.
Paste into a reply to us, or attach the text file. Printing to PDF (Ctrl/Cmd + P) also works and will include every part.