Themba Ngobeni · Java Developer · Johannesburg

I build the backend behind
cross-border payments.

Java and Spring Boot for FNB's foreign-exchange division, the engine behind currency conversions and international transfers. I also built SynthForge, a Spring Boot library published on Maven Central.

I'm a Java developer in FNB's foreign-exchange division, working on cross-border payments. That includes TCIB, a real-time payments platform for the SADC region; the move from SWIFT MT to ISO 20022; and the Spring Boot API that connects a fraud detection model into the live payments pipeline.

Production support is part of the job. I'm on the on-call rotation for that fraud API, and I use MySQL to investigate why applications fail and why payments don't go through.

Outside FNB, I build developer tooling: SynthForge, my Spring Boot library on Maven Central, seeds related JPA entities with realistic fake data in the right order. Before that, my honours research at Wits became an IEEE-published paper on satellite image classification, co-authored with Ritesh Ajoodha.

3+
Years at FNB
ISO
20022 migration
IEEE
Published research
Themba Ngobeni
Themba Ngobeni
Java Developer · FNB
Johannesburg, ZA
JavaPythonReactSpring BootNext.js
Jan 2023 - Present
Java Software Engineer
First National Bank (FNB) - Foreign Exchange

Working on TCIB, a real-time cross-border payments platform for the SADC region, integrated with three regional banking partners and live since 2024. Built Spring Boot transformation microservices for the SWIFT MT to ISO 20022 MX migration, with XSD validation enforced at the inbound boundary. Built the Spring Boot API connecting the Illicit Flow Fraud Model into the live payments pipeline, and support it in production as part of the on-call rotation. Outside the Spring Boot work, the integrations with the legacy bank systems run over SOAP web services.

JavaJava EEApache WicketSpring BootJPA/HibernateApache ActiveMQMySQLOracle SQLXML/XSDRESTSOAP
Nov 2022 - Dec 2022
Full Stack Engineer - Internship
Avior Labs

Two-month internship: drone and UAV computer vision work, plus a React document storage system that let managers filter and sort the specific clients they work with, using an internal sorting system.

PythonOpenCVImage ProcessingComputer VisionReact
2022
BSc Honours in Mathematical Sciences
University of the Witwatersrand

Honours research on satellite image classification using HOG and DAISY features, published on IEEE Xplore and co-authored with Ritesh Ajoodha.

ResearchComputer VisionPython
2020
BSc Computer Science
University of the Witwatersrand

Undergraduate degree in computer science, covering programming, data structures, and algorithms.

ProgrammingData StructuresAlgorithms

Most of this is my day-to-day stack at FNB; the frontend tools are for my own projects, including this site.

Java3+ years
Spring Boot3+ years
JPA / Hibernate3+ years
REST APIs3+ years
SOAP web services3+ years
XML / XSD3+ years
Apache ActiveMQ3+ years
Validate at the boundary, so nothing behind it has to guess.
From the SWIFT MT to ISO 20022 migration
GitHub →
02

Bankwave V2.0 - Microservices Banking Platform

Java · Spring Boot · Microservices

A banking backend split into accounts, loans and cards microservices, built with Spring Boot 3, Spring Cloud Config and Docker Compose.

Java 21Spring Boot 3Spring CloudDockerMySQL
03

Satellite Image Classification

Python · HOG + DAISY · SVM

An IEEE-published study, co-authored with Ritesh Ajoodha, on classifying satellite land use with a classical feature-descriptor pipeline: global HOG and local DAISY features combined through Bag of Features and classified with an SVM, reaching 81.76% accuracy across 21 scene categories on the UC Merced dataset.

Pythonscikit-learnHOGDAISYSVMBag of Features

Questions about SynthForge, the research or anything on this page? Send a message below or reach me on LinkedIn.