← /systems
Stack modernisation

Online counselling platform

RoleBackend Software Engineer
CompanyDiya Interactive · 2023–now
DjangoDRFMySQLVonage OpenTokSimpleJWTGitHub Actions
Context

A platform connecting clients with counsellors for booked appointments, chat and video sessions. The codebase was on Django 2.2, and its chat ran on a WebSocket stack that was hard to maintain.

Approach
  • Chat rebuild: replaced the Django Channels/WebSocket chat with a versioned REST API (v2) using OpenTok session tokens.
  • Framework upgrade: migrated Django 2.2 → 4.2, along with DRF 3.15 and the SimpleJWT upgrade.
  • CI: built a GitHub Actions test pipeline with MySQL 8 and per-module test runs.
  • Production fixes across appointments, auth and video sessions. → full write-up
Outcome

A modernised, supported stack with automated tests on every push.

Want to talk about this system? → get in touch