PORTFOLIO
Communications & Platform Engineering
SIP telephony servers and the softphones that register against them, a self-hosted messenger, video conferencing, document management and offline maps, a private network estate, a video platform, a mobile test lab, and the backend tooling the rest of this portfolio runs on.
The Systems Underneath the Systems
Much of this section exists because we needed it ourselves. A portfolio that spans four banks, several state platforms and a university estate cannot be run on somebody else’s hosted backend at somebody else’s price, and several of our clients cannot place their data outside their own control at all.
So we built the layer underneath. Self-hosted backend orchestration that provisions isolated environments on one machine, with credential generation, zero-downtime updates with health checks and rollback, encrypted backup and restore, and reverse proxy with certificate management. Offline-first synchronisation so an application keeps working on a local network with no internet at all, then reconciles.
The telephony work follows the same logic. Running our own SIP server stack means calling, presence, encrypted messaging and push wake-up behave the way we specified rather than the way a vendor’s roadmap decides, and a client who needs their voice traffic to stay on their own infrastructure can have exactly that.
Systems in this domain
SIP Server Stack
Telephony infrastructure
A production SIP server stack providing registration, audio and video calling, presence, encrypted one-to-one and group chat, push wake-up for both mobile platforms, media relay for network traversal, and self-service account provisioning.
eSystems Phone
Softphone
A cross-platform SIP softphone in Flutter registering against the stack above, with audio and video calling, one-to-one and group chat, presence and call history.
AeroVox WebRTC Client
Softphone
A secure WebRTC SIP client registering over encrypted websockets against an Asterisk cluster, built for stable registration and persistent traversal across wide-area networks.
TSATVoIP
Android telephony
A native Android voice-over-IP client for a dedicated deployment.
BrowsePoint VPN
Private networking
An Android client for a self-hosted private network estate. Registers automatically against the organisation’s own server on launch and routes traffic through it, so remote staff reach internal systems without a public exposure.
iTube
Video platform
A self-hostable, mobile-first vertical short-video platform. A monorepo pairing an API service and mobile client with a dedicated recommendation service and a transcoding pipeline that includes automated content-safety screening.
Self-Hosted Backend Tooling
Platform operations
Orchestration for multiple isolated self-hosted backend environments on one host: port multiplexing, secure credential generation, zero-downtime updates with health checks and rollback, encrypted backup and restore, and reverse proxy with automatic certificates. Paired with offline-first synchronisation so applications keep working with no internet connection.
Messaging & Proximity
Integration work
Business-initiated voice calling over a major messaging platform’s calling interface using real WebRTC session negotiation, plus a Bluetooth low-energy beacon broadcaster and scanner for proximity applications.
EsysChat
Self-hosted messenger
A messenger built on the open-source Tinode server and rebranded as EsysChat, with its web client at chat.esys.ng. We wrote the infrastructure-as-code that rebuilds the whole service, covering media storage, a relay for calls, monitoring and tested backups, plus a patched server that sends phone sign-up codes by SMS and scripts that rebrand the web, Android and iOS clients.
Esystems Meet
Video conferencing
Our branded deployment of the open-source Jitsi Meet video conferencing stack at meet.esys.ng. We built the custom web image with company branding and a one-command installer that sets up the containers, secrets, certificates and firewall, with a service unit and an automated health check.
Esystems EDMS
Document management
A self-hosted document management service at dms.esys.ng, built on Nextcloud All-in-One with in-browser office editing, a shared whiteboard and live sync. Our work is the deployment: the configuration, an idempotent deploy script for publishing and routing, and post-install tuning.
Esys Maps
Offline maps
Offline maps and navigation built on the open-source OsmAnd project. We rebranded its Android, iOS and web map apps as Esys Maps with their own identity and theme, kept the OpenStreetMap attribution and licences, and deployed the web map at maps.esys.ng.
Android E2E Testing Lab
Mobile test automation
Our internal end-to-end test lab for Flutter Android apps. A built app is installed on headless Android 14 and 15 emulators and scripted test flows run against it. Each run produces screenshots, video, logs and an HTML report, driven from a command-line tool, an API or a web dashboard, with optional AI that explains failures but never decides pass or fail.
Technical detail
| System | Stack | Notable capability |
|---|---|---|
| SIP Server Stack | Flexisip, TURN and STUN relay, FCM and APNs push | Encrypted group chat and push wake-up on both platforms |
| eSystems Phone | Flutter | Audio, video, chat and presence in one client |
| AeroVox | Flutter, Riverpod, Dart WebRTC over secure websockets | Stable registration across changing networks |
| TSATVoIP | Native Android | Dedicated deployment client |
| BrowsePoint VPN | Android client against a self-hosted mesh server | Automatic enrolment with full traffic routing |
| iTube | NestJS, React Native Expo, Go recommendation service, FFmpeg pipeline | Transcoding with automated content-safety screening |
| Backend Tooling | Bash orchestration, Docker, Postgres, offline sync engine | Zero-downtime updates with health checks and rollback |
| Messaging & Proximity | WebRTC session negotiation, Flutter BLE | Business-initiated calling over a messaging platform |
| EsysChat | Tinode (Go), PostgreSQL, S3 storage, coturn, Terraform, Ansible | Phone sign-up codes sent by SMS through a patched server |
| Esystems Meet | Jitsi Meet, Docker Compose, Nginx, Let’s Encrypt | One-command installation with an automated health check |
| Esystems EDMS | Nextcloud All-in-One, Collabora Online, Docker, BorgBackup | Browser-based office editing on self-hosted storage |
| Esys Maps | OsmAnd (Java, Kotlin, C++), React, OpenStreetMap | Rebranded Android, iOS and web builds from one source tree |
| E2E Testing Lab | Android emulator (KVM), Maestro, Python FastAPI, React, Docker | APK in, report out, with AI explanations of failures |
Data that cannot leave your building
If regulation or policy stops you putting a system in someone else’s cloud, everything in this section was built to run on infrastructure you control.