Raquion

Software engineering

Raquion

I build the software a business actually runs on. Multi-tenant platforms, payment and payout flows, agent tooling, and the infrastructure holding them up - the parts where being subtly wrong shows up as a support ticket, a bad invoice, or money in the wrong account.

Discipline
Backend and platform engineering
Systems
Multi-tenant SaaS · Payments · Agent tooling · Infrastructure
Engagement
Contract, fractional and advisory
Based
Philippines · remote

Rodolfo RaquionStart a conversationSee the work

Projects

Selected work

Sales pipelines, financial reporting, on-site quotes and invoice automation, alongside personal projects.

Deck’d Out Command Centre pipeline board with lead stages and project navigation.
Sales pipeline

Client project

Deck'd Out Command Centre

Sales pipeline, proposals, scheduling and Xero invoicing for an Australian deck builder.

Stack
Python · FastAPI · Postgres · React proposals app
Demo finance dashboard with summary cards, a weekly invoice table and draft invoices.
Finance dashboard in demo mode

Client project

S&S Financial Dashboard

Syncs Xero data from every company in a business group into one dashboard.

Stack
Next.js · Supabase · n8n
ONQ Quote Runner sample quote at the scope of works step, with drafted room details ready for editing.
Editable scope of works

Client project

ONQ Quote Runner

On-site quote, sign, pay and book workflow for a building group, with AI-drafted scopes of works.

Stack
Next.js · Supabase · Stripe · Claude API
Factored invoice pipeline diagram showing email intake, n8n orchestration, field extraction and PDF stamping.
Factored-invoice pipeline

Client project

Working Capital Finance

Invoice pipeline: email intake, document extraction, then banking redaction and stamping of factored invoices.

Stack
n8n · FastAPI · PyMuPDF · Cloud Run
The portfolio.raquion.com homepage: a dark page with the headline "Shaping Code into Real Projects that Deliver Results" beside an interactive 3D scene of a lamp-lit room with a desk, monitors and a chair.
Screenshot of portfolio.raquion.com

Personal site, WebGL

portfolio.raquion.com

An earlier personal site and the one that is enjoyable to look at: a room modelled and lit in the browser with react-three-fiber rather than pre-rendered to video. It started as a follow-along of a published three.js portfolio build, and the interesting part was what came out afterwards - the template ships with invented testimonials, a client logo wall and headline statistics, and all three were removed rather than filled in. The skills grid is deliberately flat images: each 3D icon is its own WebGL context, and the page already sits near the browser limit.

Stack
React 19 · react-three-fiber · three.js · GSAP · Tailwind · Vite
Note
Adapted from a tutorial build, not an original design
Source
Private repository, public site
The equity curve the backtester produces: the strategy line stays flat and far below both the same-cashflow and lump-sum buy-and-hold benchmarks from 2010 to 2026, above a second panel plotting trailing drawdown against the 25 per cent threshold.
Output of the backtester, committed to the repository

Research tool

Drawdown accumulation backtester

A backtester for one accumulation rule on a 3x leveraged ETF: buy on a schedule, buy harder once the trailing 252-day drawdown crosses 25 per cent, trim when a position is up 50 per cent. Every modelling choice that could quietly flatter the result is written down and configurable - which rule wins inside a single day, whether trim proceeds earn interest, what counts as money contributed. The committed run is the answer it actually produced: the strategy trails both buy-and-hold benchmarks. Publishing that is the reason to build one.

Stack
Python · pandas · yfinance · matplotlib
Tested
Signals, portfolio accounting, engine and metrics
Source
Private repository
The Personal Gallery dashboard: a header reading "Overview of every object in S3 indexed by DynamoDB", a warning that nine photos are in cold storage and need a Glacier restore, and counters for total objects, total bytes and categories.
Screenshot of raquion-gallery.com

Solo build, end to end

An invite-only photo and video library for one family, built to get cheaper the longer a file sits there. Go on Lambda in front of DynamoDB, with S3 as the only place a file actually lives - uploads are presigned and multipart, so nothing large ever passes through the API. Objects age down into Glacier tiers on a lifecycle rule, and a cold tile has to be restored before it can be opened. The restore is idempotent, because a waiting user taps it twice.

Stack
Go · AWS Lambda · DynamoDB · S3 · React and TypeScript
Delivery
SAM and GitHub Actions, OIDC-federated into AWS, no stored keys
Tested
86 test files across the Go API and the React frontend
Source
Private repository, public site

These four client projects are also public on portfolio.raquion.com. Other paid work belongs to the companies who paid for it; I keep its details private. The remaining entries are personal projects.

What I build

Systems with real consequences attached

Multi-tenant platforms

Products that serve many customers off one codebase without leaking between them. Tenancy drawn at the data layer rather than patched in at the handler, self-serve onboarding, roles and permissions that survive the second and third customer asking for something bespoke.

Recent shape of work: a creator platform with per-tenant isolation and self-serve setup.

Payments and money movement

Checkout, subscriptions, payouts, refunds, reconciliation. Money paths get idempotency keys, an append-only record of what happened, and webhook handling that assumes duplicates and out-of-order delivery, because both happen. The ledger is the source of truth, not the UI.

Recent shape of work: payment and payout flows for a platform paying out to third parties.

AI agents and internal tooling

Automation that removes a real, named, repetitive job rather than demoing well. Tool-calling agents with tight boundaries, human review where a mistake is expensive, and evaluation you can run before a change ships instead of finding out in production.

Recent shape of work: agent tooling that replaced manual back-office processing.

Infrastructure and delivery

CI that actually gates, environments that match, migrations that run without a maintenance window, and logs and alerts good enough to diagnose an incident at 3am. Handing over a system nobody else can operate is not finishing.

Only the four client projects in Selected work are named here. Other paid work belongs to the companies who paid for it, and confidentiality is part of the service.

How I work

Four commitments you can hold me to

Start where being wrong costs the most
The money path, the tenancy boundary, the permission check. I find those first and make them correct and boringly obvious, then build outward. Most of a system tolerates a little mess; those parts do not.
Thin slices, in production
One narrow path working end to end beats four layers that have never met. It also means you see real progress weekly and can change your mind while changing it is still cheap.
Tests that describe behaviour
A test suite is documentation that fails when it lies. I test what the system promises a user, not the shape of the code underneath, so refactoring stays possible and the tests survive.
Leave it operable
Readable logs, alerts that mean something, a written path back from failure, and a codebase the next engineer can navigate. You should be able to run this without me.

Engagements

Three ways this usually starts

Build

Ongoing delivery as the engineer on a product, or alongside your team. Best when there is a roadmap and not enough hands.

Review

A fixed-scope look at an existing system - architecture, reliability, security posture, the money path - ending in a written assessment and a prioritised plan.

Advise

Regular time with a founder or team lead on architecture and technical decisions, without hiring for a full-time seat you do not need yet.

Get in touch

Tell me what you are building and what is in the way.

A short description of the problem is enough to start. If it is not work I should take, I will say so and point you somewhere better.

[email protected]