Ruan Grobler / Cape Town

AUTOMATION ENGINEER · MICROSOFT POWER PLATFORM · AI SYSTEMS

I automate business processes and prove the impact.

Every project below carries a before, an after and a number, and estimates stay labelled until they are measured. The proof links open real output, not screenshots.

01Five production systems live in my first 30 days at a property services group, each monitored and documented.
02A 1.16 million row PostgreSQL warehouse built as public proof. Open the repo, one command rebuilds it.
03A live AI receptionist venture. Talk to a demo desk right now, no signup.
01

Production systems

TrueProp Property Services (True Group). Employer systems, walkthrough available in an interview.
01

Deal Intake Automation (AI Extraction)

Broker deal emails become tracked pipeline records in under a minute.
1.3 to 1.8 hrs/week (est)Live+
The problem

Every broker deal email meant about twenty minutes of reading, retyping and filing by hand. The record was only as good as the typist.

What I built

I built a Power Automate flow that uses AI extraction to pull the deal fields out of free text email. It creates the record, files the attachments, and blocks duplicates on a unique key.

Power AutomateAI BuilderSharePointOutlook shared mailbox
Proof

Employer system, so no public link. I can walk through the live flow and its reconciliation report in an interview.

02

AI Ticket Intake

Request emails become numbered tickets on a tracked list, automatically.
~1 hr/week saved (est)Live+
The problem

Maintenance and support requests came in as free text emails. No reference number, no queue, and no way to see what was still outstanding.

What I built

I built a flow where AI classifies the mail into structured fields, writes a numbered ticket with an audit trail, and auto replies to the requester with the number and a correction path.

Power AutomateAI BuilderSharePointOutlook
Proof

Employer system. In an interview I can send a test mail and show it become a numbered ticket live.

03

AI Meeting Transcript Handover Records

A meeting transcript goes in, an approved handover record comes out.
~0.75 hrs/week (est)Live+
The problem

Handover detail sat inside meeting recordings. Turning a transcript into a written, searchable record was a manual write up every single time.

What I built

I built it to the operations stakeholder's spec. AI drafts a structured handover record from the transcript, a human approves or edits it, and that approval automatically creates the maintenance entry.

Power AutomateAI BuilderSharePointTeams
Proof

Employer system. I can walk the full loop live, transcript to approved record to maintenance entry, in an interview.

04

Compliance Flow Takeover (Probation Reviews)

I took over five orphaned HR compliance flows and hardened them.
5 flows, ~0.5 hrs/week (est)Live+
The problem

I inherited five scheduled HR probation review flows. No monitoring, no runbook, and nobody but the original author could maintain them.

What I built

I took ownership, rebuilt the connections, and tested all five end to end against real review dates. Then I added failure alerting and wrote a runbook covering triggers, schedule and recovery.

Power AutomateSharePointOutlook
Proof

Employer system. The runbook exists, and I can walk through all five schedules and their failure alerting.

05

Scanned Document Classification

Scanned site paperwork classifies and files itself, 20 to 25 pages daily.
20 to 25 pages/day (reported)Live+
The problem

Scanned site paperwork, mostly daily cashups and supplier invoices, was read, sorted and filed by hand at the branch.

What I built

I took ownership of the scanning pipeline and rebuilt it. AI Builder OCR reads each scan, classifies it into one of eight categories, and files it into the right shared library with a logged trail.

Power AutomateAI Builder OCRSharePointScanner mailbox
Proof

Employer system. I can walk through the live pipeline, its filing log, and the written rollout plan for the second site.

06

Bulk Ordering Platform

A QR code replaces a phone and WhatsApp order channel with no record.
R0 claimed until liveBuilt+
The problem

Bulk buyers ordered by phone, WhatsApp and walk in. Missed messages meant lost orders, and no order was recorded anywhere at all.

What I built

I built it end to end in three days. One link or QR code to order, an instant reference number, a mobile approval step for the branch manager, then an automatic confirmation and a prep sheet.

Power AutomateMicrosoft FormsSharePointOutlook
Proof

Employer system, still in business walkthrough, so I claim no value yet. I can demo a test order end to end.

07

HR Onboarding System

Two macro-enabled workbooks replaced by a system that works on any device.
45 tasks tracked per hireBuilt+
The problem

New hire onboarding ran on two macro-enabled Excel workbooks. Desktop only, one person in the file at a time, and no view across employees.

What I built

I audited the live process and wrote down four failure modes before building anything. Then I replaced both workbooks with a web system: a 45 task workflow per hire, a cross employee dashboard, automated task and probation emails, and CSV export.

Node.jsExpressSQLiteScheduled jobsCSV export
Proof

Employer system, in business demo, so I claim no hours saved yet. I can walk the workflow, the dashboard and a test mode email run in an interview.

02

Engineering builds

Personal builds. These ones you can open and check.
01

ApplyForge: AI Job Application Engine

Scrapes job boards, scores every listing against my CV, writes the pack.
212 tests, CI gatedBuilt+
The problem

Applying by hand meant reading every spec and rewriting my CV and cover letter each time. Hours per application, and the scoring had no tests.

What I built

I built it in Next.js with structured Claude outputs, so every score is comparable. It ships in a multi stage Docker image, with 212 unit tests and a GitHub Actions pipeline gating typecheck, lint, tests and build.

Next.js 16TypeScriptReactClaude APIDockerVitestGitHub ActionsESLint
Proof

Proof pages show real scoring output for all 21 listings, plus the gates run locally with their real exit codes.

02

Agent Pipeline: Multi Agent Document Triage

Five agents sort a pile of documents and log exactly why.
26 of 26 routed correctlyBuilt+
The problem

Agentic AI is easy to claim on a CV and hard to prove. Job specs ask for LangGraph and I had nothing runnable to point at.

What I built

I built a LangGraph state graph: four specialist agents (classifier, extractor, validator, router) under a supervisor that owns retry, escalation and degradation. Two agents call the model, two are pure Python rules.

PythonLangGraphClaude APIJSON Schemapytest
Proof

The proof page comes straight from the run files. All 26 documents are synthetic, so accuracy is on data of that shape.

03

DealFlow SQL: Property Deals Database

A 1.16 million row property deals warehouse, rebuilt in one command.
1.16M fact rowsBuilt+
The problem

The source system keeps a status column and no history. Nobody can answer what fraction of deals reach offer, because yesterday's status was overwritten today.

What I built

I built a star schema warehouse on PostgreSQL: two Type 2 slowly changing dimensions so history reports as it was, 84 monthly partitions on the event fact, 51 data quality assertions, and six measured performance case studies.

PostgreSQLSQLDockerPython
Proof

Public repo. One command rebuilds the whole warehouse, and every query output, plan and buffer count is committed, so the numbers can be checked.

04

AI Engineering Rig (Claude Code)

Custom subagents, MCP servers and hooks that keep building while I sleep.
Built+
The problem

One person working sequentially by hand. Build, then research, then monitor, then apply, one long thread at a time.

What I built

I built a rig of custom subagents, MCP servers, hooks and scheduled agents. Agents run research and verification in parallel, hooks enforce my standing rules, and independent agents check the work before it reaches me.

Claude CodeClaude APIMCPPythonTypeScript
Proof

Local setup, nothing to link. The proof pages on this site were generated by it, and the config and run logs are on disk.

05

DealFlow CRM (Dataverse PoC)

A Dataverse rebuild of the deal intake domain. Specced and seeded.
In build+
The problem

Dataverse is the platform depth most Power Platform people skip. They stop at lists and never learn tables, relationships, security roles or model driven apps.

What I built

I specced the build and seeded synthetic data: Broker, Property, Deal and Intake Log tables, an alternate key for dedupe, business rules, two security roles with column security, and a model driven app.

DataversePower Apps (model driven and canvas)Power Automate
Proof

Nothing is built yet, so nothing to open and no value claimed. The spec, three runbooks and seed CSVs exist and can be shared.

03

Receva, my venture

AI voice receptionist. receva.co.za
01

Receva: Live AI Voice Receptionist

An AI receptionist answers a real business line in English and Afrikaans.
24/7 on a live lineLive+
The problem

During the service rush, calls rang out unanswered. Bookings and takeaway orders were lost to a busy signal.

What I built

I built it on Retell and Twilio with an SA English and Afrikaans voice. It takes bookings and orders, n8n writes each one into Supabase over webhook, and the branch dashboard shows the day.

RetellTwilion8nSupabaseElevenLabs SA voice
Proof

The pilot line belongs to a client, so the number stays private. Call recordings and transcripts can be walked through on request.

02

Receva: 6 Live AI Demo Desks

Demo desks where a stranger can talk to the AI right now.
6 live, 65 generatedLive+
The problem

Cold outreach had nothing interactive to show. Just a claim in an email and nothing for the prospect to click.

What I built

I generate a per prospect page from their public business detail, and the Claude API answers real caller questions live in that business's voice. Six are deployed from a library of sixty five.

AstroVercelClaude APITypeScript
Proof

Nothing is scripted. Ask the desk anything and the answer is generated live.

04

Stack

Only what the work above actually uses.
Microsoft / Power Platform

Power Automate, AI Builder, SharePoint, Outlook, Teams, Microsoft Forms. Dataverse specced, build starting.

AI engineering

Claude API with structured outputs, LangGraph multi agent, Retell voice agents, MCP, scheduled autonomous agents.

Data

PostgreSQL, SQL (schema design, joins, window functions), Docker, data quality assertions.

Web and delivery

TypeScript, Next.js, Python, n8n, GitHub Actions CI, Vitest and pytest, Caddy on my own Linux server.