CO
Chinedu Okaforengineer.dev
Booking Nov 2026 · 1 seat left

I ship reliable
software for money-moving teams.

I build payments, ledger and back-office systems for African fintech teams. Nine years in — half of that on production infrastructure that moves real money.

Available Nov 2026·Contracts in USD, ₦, £, €·Async-first · GMT+1
Chinedu Okafor
9
Years shipping
24
Systems shipped
99.94%
Uptime avg
88%
Client renewal
Stack ·TypeScript·Next.js·Node·Go·Postgres·Redis·Terraform·AWS·Docker·Kafka·gRPC·Vitest
// how_i_work

Four defaults, non-negotiable.

Every engagement is scoped from scratch. These four things are not.

Nothing lands without tests

Unit + integration for anything money-touching. If it can't be tested, we redesign it until it can.

Boring on purpose

TypeScript, Postgres, Go. Nothing exotic. Everything observable. I optimise for the on-call engineer at 3am, not my LinkedIn.

Weekly demos

Every Friday you see what shipped, what didn't, and what's coming next week. No surprises at end of month.

Full handover

Runbooks, on-call docs, a 3-day workshop with the internal team. When I leave, nothing breaks.

// flagship_case

Kobo Ledger

TypeScript · Go · Postgres · Kafka

Rebuilt the balances engine from a fragile MySQL trigger stack into a Go service backed by Postgres and a Kafka event log. Introduced deterministic reconciliation, per-currency accounts, and a settlement engine that closes books in under 4 minutes at day end.

  • Zero unreconciled cents across 14 months of production
  • Books close in <4 min at day end (down from 3 hours)
  • Dropped a 22-service microservices sprawl to 6 well-owned services
Kobo Ledger
// pull_quote

“Chinedu rewrote our ledger without a single reconciliation error in production. That has never happened before, or since.”

Uche Mbah · CTO · Series-B fintech

// what_clients_say

What teams tell each other.

Chinedu rewrote our ledger without a single reconciliation error in production. That has never happened before, or since.
UM
Uche Mbah
CTO
He's the most senior engineer we've ever hired for eight weeks. Documentation, tests, on-call — it all just showed up.
AO
Ada Okonkwo
Founder
The one-week review saved us a six-month rewrite. His 90-day plan is still what we're executing against 14 months later.
KB
Kwame Boateng
Founder & CEO
I ping him in Slack, he replies within the hour with something useful. The advisory retainer pays for itself in one hiring call.
ZA
Zainab Alkali
Founder
kudi/queue has been the calmest part of our infra for two years. Boring in the best way.
TF
Tomi Fadeyi
Staff engineer
He walked us through the raise from a technical-diligence perspective. We closed with two competing term sheets.
IR
Ifeoma R.
Founder
// notes

Writing on shipping.

Short essays on payments infra, on-call practice, and hiring engineers on the continent.

Mar 2026 · 9 min

The double-entry ledger you probably don't need (yet).

Read
Feb 2026 · 12 min

How we ran a zero-downtime migration of 190M rows.

Read
Jan 2026 · 7 min

Hiring senior engineers in West Africa: a practical guide.

Read
Chinedu Okafor
// the_engineer

Chinedu Okafor

Senior full-stack engineer · TypeScript, Go, Postgres · ex-Paystack

I started shipping to production in 2016 during my final year at UNILAG. The next six years I moved from small studios to a payments company where I owned the ledger.

Today I work with a small number of teams as a senior engineer — usually the second or third technical hire helping a founding team scale from prototype to Series A.

The stack is opinionated on purpose: TypeScript (Next.js, Node), Go for services, Postgres and a few battle-tested queues. Nothing exotic. Everything observable.

// common_questions

Before we work together.

Full FAQ

It always starts with a 30-minute intro call — free, no pitch. I use it to see if the work you need lines up with what I do. If we're a fit, I send a written scope within 3 days.

// let's_ship

Have a project in mind?

Book a 30-min intro call. If we're a fit, I send a written scope within 3 days.