What people touch.

  • React Native on iOS and Android, through the New Architecture upgrade.
  • React, Next.js and TypeScript on the web.
  • Swift and Kotlin native modules: Face Liveness camera start, ~5s → <500ms.

Design systems, WCAG accessibility, Jest and TDD. Offline-first when the network can’t be trusted.

What keeps it standing.

ls

ls stack/

node.js django spring-boot postgresql aws docker

ls payments/

m-pesa pesalink rtgs cards stripe-ach

REST, GraphQL and WebSockets. JWT and OAuth2. CI/CD on GitHub Actions, releases to both stores.

Nairobi / UTC+3

Senior full-stack & mobile

Isaiah Korir

Drag the seam. I build both sides.

The whole vertical

Most teams draw a line between the app and the backend. I work on both sides of it. At Diamond Trust Bank that means the React Native screens of the bank’s mobile app, the Swift and Kotlin modules under them, and the payment flows behind them: M-Pesa, PesaLink, RTGS and cards.

I take a feature from technical design through API work, testing and UAT to the production release. Before the bank: three years at Crowdbotics, five years of part-time Upwork contracts, and AMPATH, where I scaled the Point of Care system from a handful of patients to 100,000+ HIV patients.

crash rate on the Diamond Trust Bank mobile banking app
−99%
HIV patients on AMPATH’s Point of Care system
100,000+
Upwork client projects, at 100% satisfaction
36

Record, 2018 to now

Core samples

Six layers, from the native module under the screen down to the deploy. Each role is a core cut straight down through them.

Fig. 1Nine roles cut through six layers, client side up.

  1. 01Native modulesSwift and Kotlin modules under React Native, like AWS Rekognition Face Liveness. Secure credential storage, SSL pinning and app hardening.
  2. 02Mobile clientsReact Native on iOS and Android: the New Architecture upgrade at the bank, offline-first apps, push and deep links.
  3. 03Web clientsReact and Next.js, micro-frontends, shared component libraries, WCAG keyboard and screen reader work.
  4. 04API & schemaNode.js, Django and Spring Boot. REST, WebSockets and GraphQL over PostgreSQL, MySQL and MongoDB.
  5. 05PaymentsM-Pesa, PesaLink, RTGS, cards, Stripe ACH and app-store subscriptions, with retries, idempotency and reconciliation.
  6. 06Infrastructure & releaseAWS, Docker, Linux and GitHub Actions. Dynatrace and Firebase in production. Releases to the App Store and Play Store.
  1. Senior Software Engineer, Mar 2024 to present. Layers: Native modules, Mobile clients, Web clients, API & schema, Payments, Infrastructure & release. The bank's React Native mobile banking app. I rebuilt Face Liveness KYC as native Swift and Kotlin modules: camera start went from ~5s to under 500ms. Billions of Kenyan shillings in customer transactions a month. M-Pesa, PesaLink, RTGS and card payments with retry and idempotency handling, and a payments reconciliation service in Java and Spring Boot. Stack: React Native, TypeScript, Swift, Kotlin, Java, Spring Boot.
  2. Senior Software Engineer, Mar 2021 to Mar 2024. Layers: Mobile clients, Web clients, API & schema, Payments, Infrastructure & release. 10+ production React and React Native apps, reaching ~50k monthly active users. Stack: React, React Native, TypeScript, Django, Node.js, AWS.
  3. Full Stack Software Engineer, contract, Apr 2024 to Aug 2024. Layers: Mobile clients, Web clients, API & schema. A patient-family communication app for hospital intensive care units, built in React, React Native and Node.js. Stack: React, React Native, Node.js.
  4. Full Stack Software Engineer, contract, Nov 2022 to Mar 2024. Layers: Web clients, API & schema. React and Django platform. REST APIs for candidate profiles, assessments and career opportunities. Stack: React, Django, REST.
  5. Software Engineer, contract, Mar 2022 to Jun 2022. Layers: Mobile clients, Web clients. React and React Native front end for a Web3 company building on NEAR Protocol. Stack: React, React Native, TypeScript, Redux, Tailwind CSS.
  6. Software Engineer, contract, Jan 2022 to Mar 2022. Layers: Web clients, API & schema. React front ends on Java and Spring Boot back ends for agency clients. Stack: React, Java, Spring Boot.
  7. Freelance Software Engineer, Part-time, Jan 2020 to Jan 2025. Layers: Mobile clients, Web clients, API & schema. 36 client projects at 100% satisfaction. Next.js, React Native and Django. Stack: Next.js, React Native, Django, PostgreSQL, Jest.
  8. Full Stack Developer, Feb 2019 to Apr 2020. Layers: Mobile clients, Web clients, API & schema. B2B apps in React and Node.js for 13 corporate clients. Downtime down 30%. Stack: React, React Native, Node.js.
  9. Full Stack Developer, May 2018 to Feb 2019. Layers: Web clients, API & schema. The Point of Care system in Angular and Node.js, scaled from a handful of patients to 100,000+ HIV patients. Stack: Angular, Node.js, Hapi, Express.
  1. Senior Software Engineer

    Mar 2024 to present

    The bank's React Native mobile banking app. I rebuilt Face Liveness KYC as native Swift and Kotlin modules: camera start went from ~5s to under 500ms.

    Billions of Kenyan shillings in customer transactions a month. M-Pesa, PesaLink, RTGS and card payments with retry and idempotency handling, and a payments reconciliation service in Java and Spring Boot.

    • react-native
    • typescript
    • swift
    • kotlin
    • java
    • spring-boot

The six layers

  1. 01Native modulesSwift and Kotlin modules under React Native, like AWS Rekognition Face Liveness. Secure credential storage, SSL pinning and app hardening.
  2. 02Mobile clientsReact Native on iOS and Android: the New Architecture upgrade at the bank, offline-first apps, push and deep links.
  3. 03Web clientsReact and Next.js, micro-frontends, shared component libraries, WCAG keyboard and screen reader work.
  4. 04API & schemaNode.js, Django and Spring Boot. REST, WebSockets and GraphQL over PostgreSQL, MySQL and MongoDB.
  5. 05PaymentsM-Pesa, PesaLink, RTGS, cards, Stripe ACH and app-store subscriptions, with retries, idempotency and reconciliation.
  6. 06Infrastructure & releaseAWS, Docker, Linux and GitHub Actions. Dynatrace and Firebase in production. Releases to the App Store and Play Store.

Filled where I wrote the code, hollow where I didn’t. Only the bank runs through all six.

Contact

Hiring is the priority. I’m looking for a senior full-stack or React Native role: remote, in Nairobi, or abroad with visa sponsorship. I’m open to contract work too.

location
Nairobi, Kenya
timezone
UTC+3 (EAT)
education
BSc Information Technology, JKUAT, 2018
MBA, University of East London, in progress
linkedin
linkedin.com/in/ikorir