Learnpally
E-learning platform across web and mobile. Course management, Paystack payments, background jobs for email and video processing, and PostHog analytics.
Role
Full-Stack Engineer
Year
2024
Status
Live
Stack
React · React Native

Overview
One product, two clients: a React web app and a React Native mobile app sharing a single Express API. I worked across the whole stack, from the course player to the payment reconciliation behind it.
What it does
Shared Express API serving both web and React Native clients
Paystack checkout with webhook-driven reconciliation
Background workers for transactional email and video processing
PostHog instrumentation across the signup and purchase funnels
The hard part
Payment webhooks arrive out of order and sometimes twice. Making enrolment idempotent — keyed on the provider reference rather than the request — was what made the flow trustworthy.
What it taught me
Instrument the funnel before launch, not after someone asks why conversion is low.