Portrait of Jonathan Ooi

Jonathan Ooi

Principal Software Engineer · Kuala Lumpur

I build and modernise the systems fintech runs on.

Payment platforms, bank integrations, high-volume settlement and reconciliation engines, and legacy modernisation. Designed, built, and shipped to production. Spec-driven, AI-assisted workflows shorten the path from business problem to working software.

View My Work

Role

Principal Software Engineer @ Soft Space

Domain

Payments · Settlement · Reconciliation

Approach

Spec-driven, AI-assisted delivery

GoNode.jsTypeScriptJavaPostgreSQLAWSDockerKubernetesMicroservicesREST APIs
Bank IntegrationsSettlementReconciliationBatch ProcessingDynamoDBDuckDBRedisEvent-drivenCI/CDMCPAI AgentsTerraform
Professional Summary

Engineering depth with business context.

Principal Software Engineer with experience across fintech, SaaS, consulting, and product engineering. I work where backend architecture meets product decisions, and I still write and ship code. My job is closing the gap between engineering, business, and product.

Recent work includes payment platforms, bank integrations, high-volume settlement and reconciliation systems, event-driven integration layers, and legacy modernisation done without stopping the business. I lead a team, manage stakeholders, and set the standards, specs, and the constitution AI follows, built on my boilerplate structure with OKF, RAG, skill creation, and context management.

High-volume backend and platform architecture for fintech

Payments, settlement, reconciliation, and bank integrations

Legacy modernisation and event-driven decoupling

Full-stack product delivery across React, Next.js, and mobile

Team leadership, mentoring, stakeholder management, and consulting

AI-assisted delivery: spec-driven development, OKF, RAG, skill creation, MCP, context management

Career Timeline

Working experience.

Principal Software Engineer

Soft Space · Nov 2024 – Present

Current

Focus: Backend architecture, fintech platform modernisation, system integration, and engineering delivery improvement.

  • Built a reconciliation engine processing 10M+ transaction records per run, parsing, matching, and reporting in 10 minutes.
  • Cut manual reconciliation and settlement from 5 hours to 15 minutes by rolling out automated services.
  • Rolled out 20 new backend services to production, modernising legacy bottlenecks into scalable modules.
  • Unified 4 separate system portals into one, reducing merchant onboarding time.
  • Led and mentored 6 engineers, setting architecture direction across the platform's backend services and concurrent fintech initiatives.
  • For well-specified feature work, an AI-assisted, spec-driven workflow turns multi-day tasks into same-day delivery, shifting effort to architecture, review, and testing.

Senior Full Stack Engineer

Paywatch · Jun 2023 – Oct 2024

Focus: Building the bank integration layer and platform services behind the company's expansion into new countries.

  • Built the bank integration layer supporting 3 banks across 3 countries, replacing manual file-upload disbursement with a reusable regional foundation.
  • Enabled near-instant disbursement, cutting the wait for withdrawn funds to reach a user's bank from around 4 hours to minutes on withdrawal.
  • Cut new-market environment setup from 3 days to 1 hour by automating provisioning with Infrastructure as Code.
  • Launched a bill payment integration supporting 50 billers and services, opening a new revenue stream.
  • Built a rule engine turning business rules into customisable, visualised configurations across application services.
  • Revamped customer portals with the product team and mentored engineers across the systems being built.

Senior Software Engineer

Pow Pocket Sdn Bhd · Apr 2022 – Jun 2023

Focus: Full-stack product delivery with TypeScript, React, and Next.js across healthcare and e-commerce systems.

  • Delivered three production platforms across healthcare, pharmaceutical, and e-commerce within 14 months.
  • Built an order management system taking a pharmaceutical company's ordering process online.
  • Delivered an online doctor platform for rapid COVID testing.
  • Developed a memorial plot management and agent commission distribution system.
  • Built automated Cypress test flows validated against 50,000+ records, raising confidence in frontend releases.
  • Integrated a healthcare app backend with an e-wallet provider and payment gateway.
What I Do

From architecture decision to shipped system.

Backend & Platform Engineering

Backend systems, event-driven services, and API gateway layers designed for high-volume batch processing and operational load.

Legacy Modernisation

Breaking legacy bottlenecks into maintainable, modular systems without disrupting day-to-day operations.

Fintech & Bank Integrations

Payment, disbursement, settlement, and reconciliation layers across banks, vendors, and internal platforms, built middleware-first for multi-country expansion.

AI-Assisted Engineering

Spec-driven development with a constitution AI follows, built on my boilerplate structure: OKF, RAG, skill creation, MCP tooling, and context management that keep output consistent.

Full-Stack Product Delivery

Products taken from idea to production across backend, React and Next.js frontends, and mobile, from bidding platforms to healthcare and e-commerce systems.

Technical Leadership & Consulting

Leading teams, mentoring engineers, aligning stakeholders, and shaping proposals, architecture, and delivery from requirement to release.

Selected Case Studies

Proof of work, not just a list of tools.

A few examples of the kind of business and technical problems I have worked on.

Platform Architecture

Legacy System Modernisation

Problem

Existing modules were tightly coupled, hard to scale, and difficult to maintain without disrupting business operations.

Solution

Decoupled key bottlenecks into standalone scalable services while maintaining backward compatibility with the existing ecosystem.

Impact

Improved maintainability, reduced operational dependency, and created a cleaner foundation for future expansion.

Go
Node.js
PostgreSQL
AWS
Docker
Fintech Integration

Bank Integration Middleware

Problem

Manual file-upload disbursement created operational overhead and could not scale as the business expanded into new countries.

Solution

Initiated and built a middleware supporting 3 banks across 3 countries, provisioned through Infrastructure as Code.

Impact

Replaced manual disbursement with near-instant withdrawals, cutting user wait from around 4 hours to minutes, and new-market setup from 3 days to 1 hour.

Java
Go
REST API
SQL
Bank APIs
Terraform / IaC
Data Workflow

High-Volume Reconciliation Engine

Problem

Manual reconciliation and settlement took around 5 hours per cycle, with large transaction datasets to parse, match, and report.

Solution

Designed a batch-processing workflow for reconciliation and reporting using cloud-native storage and processing patterns.

Impact

Processes 10M+ transaction records per run in 10 minutes, cutting manual reconciliation and settlement from 5 hours to 15 minutes.

Go
AWS Lambda
S3
DynamoDB
DuckDB
Parquet
AI Workflow

AI Engineering Constitution & Workflow

Problem

AI-generated code drifted from existing architecture, folder structure, and shared engineering standards, and context was scattered across repos and people.

Solution

Set up a constitution for AI to follow, built on my boilerplate structure, combining spec-driven development, OKF knowledge bases, RAG, custom skill creation, and AI context management.

Impact

Turns well-specified multi-day tasks into same-day delivery, with output staying consistent with team standards across projects.

Spec-driven Development
OKF
RAG
AI Skills
MCP
Context Management
Technical Stack

The tools behind the work.

Languages & Frameworks

Go
Node.js
TypeScript
Python
Java
PHP
Laravel
Dart

Cloud & Infrastructure

AWS
Lambda
S3
ECS / EKS
Docker
Kubernetes
Terraform / IaC
GitHub Actions

Data & Storage

PostgreSQL
MySQL
SQL Server
DynamoDB
Redis
MongoDB
DuckDB
Parquet

Architecture & Integration

Microservices
REST APIs
KrakenD API Gateway
Event-driven Systems
RabbitMQ
SQS / SNS
EventBridge
Bank Integrations
Settlement & Reconciliation
Batch Processing

AI-Assisted Engineering

MCP
Context Management
Spec-driven Development
AI Agents
Boilerplates
Coding Standards

Frontend & Mobile

React
Next.js
Vue
Nuxt
Flutter
Writing / Thoughts

Engineering discipline in the AI era.

Short essays and posts around software engineering, AI-assisted delivery, legacy modernisation, and senior engineering thinking.

Engineering fundamentals still matter in the AI era

Why understanding software engineering principles separates engineers who can judge AI output from those who accept it blindly.

Read on LinkedIn

Redefining the software engineer as AI writes the code

How engineers evolve into product thinkers who direct AI instead of competing with it.

Read on LinkedIn

Clear prompts beat perfect prompts

How detailed context upfront removes rounds of clarification when working with AI.

Read on LinkedIn

Spec-driven development with AI

How AI-assisted delivery shifts engineering effort from boilerplate to architecture, and months to weeks.

Read on LinkedIn
Let’s Connect

Got a system worth building right?

Open to conversations around principal engineering, solution architecture, fintech platforms, and AI-assisted delivery. Happy to start from a whiteboard sketch or a codebase.