Skip to content
Mens Mercatus

Johannesburg, South Africa · SAST (UTC+2)

Katlego Mokoto

AI & ML Engineer / Full-Stack Developer

I build AI systems that do the slow work and stop for a human yes: RAG assistants, career pipelines, research desks and on-device tools on .NET/C#, React and Python. Open them and test them here.

  • AI & ML Engineer
  • Full-stack developer
  • AI systems architect
  • Product engineer
Availability
Available immediately
Engagement
On-site, hybrid, or remote

Johannesburg, Pretoria, Cape Town, Durban, and remote teams

LinkedInContact065 842 4274

Request a code walkthrough

Portrait of Katlego Mokoto
AvailableMens Mercatus

Selected work

Four systems worth an interview

Open the case studies

01 · Career pipeline

Human approval required

JobNet Application

A daily career pipeline that turns public job posts into a ranked shortlist and tailored drafts, and sends a letter only when the posting prints an employer address.

Role
Designed and operated the pipeline
Stack
Agents · Gmail · macOS automation · CV tailoring
Result
20:00 SAST scrape, sentence ranker, one role per company. A note is sent only when the posting prints an employer address, that mailbox verifies, and the letter cites the role. Otherwise the send is held. The previous run is reported at 15:00 SAST.

02 · Multimodal assistant

Live, with a labelled fallback

Mercatus Assist & THINK

A C# / ASP.NET Core service and a React workspace that call Gemini from the server, keep the API key off the browser, and say so when the live path is down.

Role
Built the API, the proxy, and the workspace
Stack
C# · ASP.NET Core 8 · React 19 · TypeScript · Gemini · nginx · systemd
Result
Provider-swappable chat completions, exponential backoff on 429 and 5xx, per-IP caps, and a labelled demo mode when the robot is unhealthy.

03 · Research system

Paper research desk

Forex Mercatus Codex

A hosted Python terminal for charts, multi-market views, and a session-scoped paper bot — built so it cannot be mistaken for a brokerage.

Role
Built, hosted, and bounded the desk
Stack
Python · Highcharts · yfinance · Ubuntu VPS
Result
About 87 MB on disk, quotes refreshing near every 60 seconds, up to 24 sessions with a 2-hour idle TTL, and a public health JSON.

04 · Browser studio

Runs in the browser

SoundX AI

An AI drum station and studio with 20 on-device AI tools, a plugin rack, Afro sample packs and 22 themes. Audio stays on the machine. No sign-in.

Role
Built the studio, the on-device AI tools and the Producer Agent
Stack
React · Web Audio · TypeScript · on-device ML
Result
A brief becomes a full beat in one click. Tempo and key detection, hum-to-MIDI, clash-fixing EQ and Mix QA all run in the browser.

How the systems are built

Agentic workflows, with a person on the irreversible step

AI-assisted means a model returns a bounded output: a draft, a summary, a setting. Agentic means the system can pick an approved tool, keep state, and propose the next step. It does not mean the system sends mail, places orders, or hides a failure.

  1. 01

    Intent

    What the person asked for

  2. 02

    Context

    Only the data that task needs

  3. 03

    Router

    Model, tool, or fallback

  4. 04

    Tools

    Approved APIs and files

  5. 05

    Human gate

    Stop before irreversible acts

  6. 06

    Record

    Status, latency, source

About

Who you would be hiring

I want a team that ships applied AI with clear ownership: model calls behind a service, a human decision before anything irreversible, and production habits — retries, rate limits, health checks — on the first public version.

Self-taught. 4 years’ experience. Available immediately.

Read the résumé
  • Mar 2026 – present

    AI systems architect and founder

    Project Antigravity

  • Ongoing

    Full-stack, .NET, and AI systems

    Mens Mercatus

  • Before the portfolio

    Operations and optimization

    Earlier systems work

065 842 4274Hire me