Back to projects

Product engineering

Education and Career Product Platform

Client: Group GTI

Owned the design and delivery of a targeted in-app notification system built across two parts: an extended admin tool for composing and broadcasting messages, and a new student inbox in the main product. Targeting happened automatically based on data students filled in at registration, including location, university, course, and preferences. The system cross-referenced that data to figure out who should receive each message. Admins wrote messages with placeholders that got replaced with each student's actual details at send time. Students got relevant messages in their inbox and could mark them as read, dismiss or delete them, which led to a measurable increase in engagement.

  • React
  • Next.js
  • NestJS
  • MySQL
  • Node.js
  • Gatsby
  • Drupal

Case study

Owned end-to-end delivery of a targeted in-app notification system, working across the internal admin tool and the main student-facing product.

On the admin side, I extended the existing internal tool so the operations team could compose and broadcast messages to students. Targeting was not manual. It was driven by data students had already submitted during registration, things like their location, university, course and preferences. The system used that data to work out exactly who each broadcast should reach.

Admins wrote messages using placeholders. At send time the system resolved each placeholder and replaced it with the student's actual data, so every message felt like it was written for that person rather than sent in bulk.

On the product side I built the student inbox from scratch in the main application. Students only saw messages relevant to them and could mark them as read, dismiss them, or delete them.

The feature drove a real increase in student engagement, which came from the combination of relevant targeting and the fact messages felt personal rather than generic.