Semeton Balogun
Software engineer. Backend systems for banks, enterprise SaaS, and public health.

I studied nursing at the University of Lagos, working as a graphic designer and creative director for about five years alongside the degree. I graduated with distinction and qualified as a registered nurse. Curiosity got me teaching myself to code. In 2020 I joined the tech apprenticeship at Bincom Dev Center, which became my first engineering role, with Emmanuel Ogwo as my mentor.
Since then I've mostly built backend systems: education platforms at Bincom and ScholarshipIQ, then as technical lead at Zercom Systems, where I led the rewrite of an LMS used by Wema Bank, First Bank, PremiumTrust Bank, and Seven-Up Bottling Company. What I keep coming back to, and write about, is how architecture decisions hold up once they meet production.
Currently at Seamless Technologies, and on contract with eGov Foundation on DIGIT, the platform behind Nigeria's health campaigns. Pursuing a Master's in Information Technology at Miva Open University, and growing toward systems architecture and solutions engineering.
Work
eGov Foundation — Hub Software Engineer (Contract)
Jun 2026 – present
Working with the Solutions Engineering team on DIGIT HCM, the open-source platform running health campaigns in Nigeria.
- –Supported seasonal malaria chemoprevention (SMC) campaigns across Abuja, Bauchi, and Taraba
- –Diagnose field-reported issues: sync failures, stock and beneficiary data problems, app rollout issues
- –Write root-cause analyses and escalate confirmed defects to product engineering
Java · Spring Boot · PostgreSQL
Seamless Technologies — Backend Engineer
Nov 2024 – present
Backend services for a multi-tenant HRMS serving enterprise clients.
- –Built backend for the AI-integrated recruitment module: CV parsing, candidate ranking, automated screening
- –Implemented webhooks for the recruitment pipeline
- –Stabilizing and shipping features across exit, onboarding, and employee confirmation modules
Zercom Systems — Technical Lead
Apr 2023 – Nov 2024
Led engineering on Tangerine LMS: from a separate codebase per client to one multi-tenant platform, Tangerine365, running on-premise at banks and enterprises, as a self-serve cloud product, and inside Human Manager HRMS.
- –Set up version control and merged the per-client codebases into one, with per-client customisation — a bug fix now shipped once instead of once per deployment
- –Acted as solutions architect for client deployments: chose the architecture and server specifications, and represented engineering in every critical stakeholder meeting
- –Designed the hardest rollout, First Bank's three-tier on-premise deployment built to the bank's infrastructure requirements
- –Launched the self-serve cloud version at tangerine365.com, and made it the default learning module in Human Manager HRMS so every new HRMS tenant gets an LMS
- –Wrote a custom SQL Server driver alongside the MySQL default; deployed across IIS inside bank networks, Apache, DigitalOcean, and AWS; cut infrastructure costs ~85%
- –Built REST integrations with 5+ external organisations, ran security and load testing with OWASP ZAP and JMeter, and trained client teams on the platform
PHP 8 · Laravel · SQL Server · MySQL · Node.js · Memcached · Docker · IIS · Apache
ScholarshipIQ — Backend Engineer
Jun 2022 – Apr 2023
Built the backend for an academic matching and funding platform.
- –Backend services and REST APIs in Laravel, integrated with a React frontend
- –Cut API response times ~50% through query optimization and indexing
- –Introduced staging environments and branching discipline; cut production errors by over 90%
- –Added email verification to eliminate ghost sign-ups
- –Integrated Flutterwave for payments, HubSpot for user management, and cron-driven email automation
Bincom Dev Center — Backend Developer
Sep 2020 – Jul 2022
Joined through Bincom's tech apprenticeship; became my first engineering role.
- –Backend components in Node.js and PHP across educational platforms (ARM Learn) and internal API systems
- –OAuth2 integrations with Google and Facebook
- –Trained 5+ interns; helped run technical community events
Projects
Tangerine365 — Led
Multi-tenant LMS deployed across Wema Bank, First Bank, PremiumTrust Bank, and Seven-Up Bottling Company.
A full rewrite of a legacy PHP 7.4 LMS into a multi-tenant PHP 8 platform with per-tenant database isolation. The hard part was the multi-database strategy — keeping MySQL as default while supporting SQL Server for the banks that required it, without forking the codebase.
What I did
- –Designed the multi-tenancy layer using the strategy pattern; one codebase, multiple database drivers
- –Two tenancy models from that codebase: subdomain-based in the cloud (tenant.tangerine365.com), ID-based inside Human Manager HRMS
- –First Bank deployment: external load balancer → two proxying web servers → internal load balancer → two app servers → central SQL Server
- –Built core modules for user management, course delivery, and integrated Jitsi Meet proctoring
- –Set up CI/CD across IIS (Windows Server) and Apache (Ubuntu) deployments
Read: Part 1 · Part 2 · The hosting setup
PHP 8 · Laravel · MySQL · SQL Server · Docker · Jitsi Meet · LDAP · IIS
Terminoxx360 — Sole engineer, new version
Real-time ATM fleet monitoring, running at Access Bank.
I maintain the version running at Access Bank, where I fixed the jobs that stalled under database locks. I then rebuilt the platform as its sole engineer: a new version designed to avoid those locking problems, built to serve multiple countries and regional subsidiaries from one deployment.
What I did
- –At Access Bank: diagnosed transaction-heavy jobs stalling under database locks and rewrote them for transactional efficiency
- –Added index-based query optimization and schema cleanup that cleared the persistent slow-query backlog, plus auto-restart for stuck jobs
- –New version: multi-tenancy by country and regional subsidiary, with full brand customisation per tenant
- –Map views, a full monitoring history, and detailed reporting, behind a deliberately simpler UI
- –AI-generated system overviews, reports, and alerts, with Ollama, Claude, or OpenAI as the model provider
Read: The hosting setup
Laravel · MySQL · Redis · Queue workers · Ollama · Claude · OpenAI
TrustCenta — Sole engineer
Two products: estate access control and a cybersecurity suite.
TrustPass handles QR-based entry passes for digital estates — role-based permissions, real-time revocation, web dashboard and mobile app. The Cybersecurity Suite wraps ZAP and Gophish behind clean APIs with scheduled scans and automated reporting.
What I did
- –Designed and built both systems from scratch
- –Web (Next.js) for administrators; React Native for gate personnel
- –Wrapped ZAP and Gophish behind clean APIs with scheduled scans and automated email reports
Read: Post-mortem, Part 1 · Part 2
Laravel · Next.js · React Native · MySQL · Docker · ZAP · Gophish
Agent Contract — Creator
A governance runtime that puts deterministic guardrails around AI coding agents.
Published npm CLI that drops a policy layer into any repo so AI agents (Claude, Codex, Copilot) operate under explicit, enforceable rules instead of hoping they read the instructions file. Enforcement happens before writes land, not in post-hoc review.
What I did
- –Designed a layered runtime: repository contract (policy) → execution role (scoped authority) → governance runtime (enforcement) → verified writes
- –Built deterministic scope enforcement via exit codes — violations are blocked before they reach the codebase, not caught in diff review
- –Added Repository Memory so architectural decisions and session state persist across executions instead of being rebuilt each time
- –Made governance provider-independent, so the same contract holds whether the agent is Claude, OpenAI, or a future model
- –Shipped and maintain it as an installable CLI: npm i -g @semeton/agent-contract
Read: The writeup
Node.js · CLI · YAML · Claude · OpenAI
Writing
Engineering writing on Codeplified, practitioner to practitioner.
- Beyond Prompts: Repository Governance for AI Coding Agents
Jul 2026 · Deterministic guardrails for non-deterministic agents.
- The Architecture I Didn't Design, Part 1: Decisions Under Deadline
May 2026 · How a Central Bank vulnerability scan kicked off a six-month rebuild of an LMS deployed across several major Nigerian banks.
- The Architecture I Didn't Design, Part 2: Decisions Production Demanded
May 2026 · The rebuild was done. The architecture wasn't. What ten thousand users in production taught us about everything we hadn't thought to design.
- When Your Security Platform Becomes the Target: A Post-Mortem (Part 1)
May 2026 · How "small" convenience decisions added up to a full infrastructure rebuild.
- When Your Security Platform Becomes the Target: A Post-Mortem (Part 2)
May 2026 · Five lessons from rebuilding from scratch, and the architecture I should have had on day one.
- Understanding Is the Feature: What AI Agents Can't Do For You
Mar 2026 · A reflection from an engineer who learned the hard way.
- Engineering is More Than The Code
Aug 2025 · How I Cut Hosting Costs by 85% Without Sacrificing Performance.
Elsewhere
Perspective — Podcast
Co-hosted with a close friend. Conversational, not specialist — ambition, attention, adult friendships, discipline, identity.
Medium — Essays
Essays and journaling. Includes On the God Question — a long-form piece on naturalistic agnosticism and why no existing religion produces a portrait of God that isn't too small and too human.