About
I’m Abdul-Qudus Rufai, a frontend and mobile engineer. I build software that has to work somewhere specific: on a POS terminal at a checkpoint, at a hospital desk, in a payment flow where the numbers have to be right.
Most of my work is in React Native and React. What I enjoy most is the part after the screens are designed: getting the app onto real devices, through store review, onto weak networks and into the hands of people who depend on it.

Career so far
Web platforms
My first product role was at MySolarBid, building the web platform where clients request quotes and connect with verified solar installers, including quote generation and warranty management.
Into mobile and the app stores
I moved into React Native: Hoydoon at Quorvix, and library apps for two universities, each published to both Google Play and the App Store.
Software on dedicated hardware
At AFT Solutions I started building field systems for Oyo State agencies and later MedicFlow for hospitals, most of them on Android POS terminals with card payments and receipt printing.
Fintech at scale
At SurgePay I built the multi-currency mobile app end to end, and the flows moved over $1M in their first six months.
Tools for developers
Alongside client work I built command-line tools for my own workflow: enve, Sift and CrossCheck.
What I enjoy building
Products where the interface is only the visible part. Payment flows that must match a ledger. Field apps that run on hardware without a camera app. Updates that have to reach devices nobody can collect.
I like problems where knowing Android and iOS matters as much as knowing React, and where a good result is something you can measure.
How I work
Production over demos
Shipping means devices, deployment, monitoring, network failures, store requirements and real users, not only finished screens.
Reliability is user experience
Retries, timeouts, offline behaviour, loading states and failure recovery are part of the product design.
Understand the platform
React Native saves duplicated work. It does not remove the need to understand Android and iOS.
Measure before optimising
Performance work starts from observed behaviour and ends with a number that moved.
Keep complexity purposeful
An abstraction earns its place by solving a problem I actually have.
Right now
I’m venturing into backend development with Go, learning to build the services and APIs that the apps I work on depend on.
I’m also writing up the platform lessons from POS work, starting with the notes on camera access, receipt printing and over-the-air updates.
Read the notes