About
I build the parts nobody sees until they stop.
I'm Benson Osei-Mensah, a senior backend engineer in Accra. I have been writing software since 2019, most of it in fintech: identity, payments, and the services money moves through in African markets.
How I work
Know which thread broke
A system I can't see into is a system I don't really run. Metrics, logs and alerts go in with the first deploy, not after the first outage. When something fails, I want to feel it the way a spider feels its web: one strand, a specific place, right away.
Every fact has one home
Stock comes from a ledger, prices from a ranked source, alert rules from one module. Two copies of the truth always drift apart eventually; the only question is whether you find out from a test or from a customer.
Fail loudly, repair deliberately
Code that silently fixes bad data also silently hides why it went bad. My checks report; people repair, on purpose, with the cause in front of them.
Boring where it counts
Money is an integer. A sale is one transaction. Deploys go through a pipeline. I save the clever ideas for the places that need them, like the web on the front page of this site.
Measure before fixing
When users kept getting signed out, the answer was in the session records, not in my assumptions. Evidence first, then the change, then a test that would have caught it.
What I've shipped
Inside companies: a biometric identity platform used by more than 100,000 people across several African markets; a classification engine that grew to drive about 40% of a company's revenue; and automation that removed roughly 70% of a team's manual work. I've also overhauled a payment service and built an access-control system, Osiki, named after the gatekeeper who knows everyone in a Ghanaian compound.
On my own: the platform this site runs on, GSETracker, Mfaso and Adan.
Tools
Python, TypeScript, Go and PHP, mostly. FastAPI, Laravel and Node on top; PostgreSQL, MongoDB and Redis underneath; Docker, Kubernetes, AWS and plain Linux boxes around it. I pick whatever the problem wants and keep the number of moving parts small.