Skip to content
Backend Software Engineer

Distributed backend systems, built to run unattended.

I'm Luis Henrique. I build the backend of a legal and financial automation platform: queues, document extraction and per-tenant isolation, on public portals that change without notice.

concurrent agents in production
130+
external systems integrated
33
records captured per second
~20/s
document layouts parsed
11

Core stack Python, FastAPI, Django, PostgreSQL, RabbitMQ, Celery, Docker, Linux, AWS.

Engineering

What I work on, and the evidence behind each item. Everything below runs in production.

Distributed Systems & Concurrency

Many processes in parallel without stepping on each other. Coordination, isolation and controlled failure.

In production

  • 130+ browser agents running in parallel across 33 court systems
  • Load partitioned across workers in the database itself, with locks and a temp directory per run
  • Isolated browser profiles per process, so one crash never takes the others down

Event-Driven Architecture & Task Queues

Long jobs leave the request. The API accepts, the queue absorbs, workers execute.

In production

  • FastAPI delegating to Celery workers over RabbitMQ, in separate queues per workload
  • Progress pushed to the browser over WebSocket, with automatic reconnection
  • JSON checkpoints so a multi-hour run resumes instead of starting over

API Design & Authentication

A stable contract in front, freedom to change behind it.

In production

  • One JSON output contract over 11 document layouts, including scanned files
  • JWT auth, CORS, token and IP filtering, GZip compression
  • Internal route handlers that keep API keys server-side, never in the browser

Data Pipelines & Document Intelligence

Documents nobody designed for machines, turned into structured data.

In production

  • Coordinate and regex extraction with PyMuPDF and pdfplumber, Tesseract OCR for scans
  • Layout classified by text block and barcode before choosing the extractor
  • Money, dates and interest fields normalized into a single schema

Multi-Tenant Architecture & Data Modeling

Tenant isolation in the database, not in the application.

In production

  • Row Level Security on every table as the isolation boundary, not application where clauses
  • Workspace membership and roles enforced by security definer functions
  • Provisioning by trigger: creating an account creates its profile, workspace and role together

Production Engineering

What retries, what shuts down cleanly, and what warns you before a user does.

In production

  • Docker and Docker Compose, deployed on AWS EC2 running Linux
  • Bounded retries, safe shutdown of drivers and child processes, guaranteed temp file cleanup
  • pytest suites covering routes, agent contracts, database and security

How I make decisions

Four rules, each one learned by breaking something.

Correctness belongs in the database

A constraint or an access policy cannot be forgotten; a where clause can. Where one mistake is already too expensive, the rule belongs in the schema.

Fail loudly, never quietly wrong

A crash becomes a ticket the same day. Wrong data crosses the system and comes back as a loss weeks later, when nobody remembers the deploy.

Push the cost of change to the edges

A new integration should add a file, not edit the one everybody imports. Indirection costs, and only pays off where change is frequent.

Bound anything that retries

Without a limit, one broken dependency consumes the whole queue. Limits are what make a system degrade instead of stop.

About

Backend engineer, currently at Homma Capital. Before that, two years as a tax consultant at KPMG.

I moved from accounting into engineering, and that crossing is why I read a process before automating it. When a system handles court payments, taxes or a monthly close, a wrong number is a loss, not a bug. I study Systems Analysis and Development at PUCPR.

PythonPython
FastAPIFastAPI
PostgreSQLPostgreSQL
MongoDBMongoDB
AWSAWS
NextJSNextJS
ReactReact

Professional Experience

Homma Capital

Backend Software Engineer

Homma Capital · Jul 2025 - Present

Current

Backend engineer on the legal and financial automation platform, from API design to the agents that run in production.

  • Designed the queue-based architecture (FastAPI, Celery, RabbitMQ) that runs 130+ browser agents across 33 court systems without manual supervision.
  • Moved the cost of a new court from the core to the edge by loading agents through reflection: a new integration became a new class, not a change to a file 130 agents depend on.
  • Built the document pipeline that turns court PDFs from 11 layouts into a single JSON contract, with OCR for scanned files and the raw text kept for auditability.
  • Raised capture throughput to roughly 20 cases per second by partitioning work in the database and checkpointing each stage: a crash at hour three resumes where it stopped instead of restarting.
PythonFastAPICeleryRabbitMQPostgreSQLMySQLDockerAWS EC2
KPMG

Tax Consultant

KPMG · Nov 2022 - Feb 2025

Two years reviewing tax and accounting processes for large clients, the exact domain I automate today.

  • Worked daily with the court and tax documents my pipelines parse today. That is why the parsers check what a number means, not just where it sits on the page.
  • Reviewed tax filings and monthly closes for large clients, which gave me the vocabulary of the domain I now model in the database.
Tax reviewProcess analysisFinancial reconciliation
The Church of Jesus Christ of Latter-day Saints

Volunteer Representative

The Church of Jesus Christ of Latter-day Saints · Feb 2019 - Feb 2021

Two years of full-time volunteer service, including training and coordinating other volunteers.

Education

Pontifical Catholic University of Paraná

Systems Analysis and Development

In progress

Jan 2025 - Jun 2027

Pontifical Catholic University of Paraná

Accounting

Completed

Jan 2021 - Dec 2024

Courses & Certifications

Meta

Front-End Developer

Completed

2025

Google

UX Design

Completed

2025

Case studies

Production systems I designed and built. Each one covers the problem, the architecture, the decisions and what I would change. University work is marked as such.

Working on something similar?

Let's talk
Professional

Distributed Automation Platform: 130+ Concurrent Agents

130+ agents in production

A queue-based platform that issues legal certificates across 33 Brazilian court systems. A FastAPI service accepts the request, RabbitMQ absorbs it, and Celery workers drive 130+ browser agents in parallel, each encapsulating one portal.

PythonFastAPICelery+4
Professional

Real-Time Operations Dashboard for an Agent Fleet

54 form variants, one form

The control plane for the automation platform: it derives per-state form requirements from configuration, proxies requests without exposing credentials, and merges live agent progress into a single file hub.

Next.js 16React 19TypeScript+3
Professional

Document Intelligence API: 11 Layouts, One Contract

11 court parsers

A stateless FastAPI service that turns court requisition PDFs into structured JSON. One endpoint routes to the parser registered for each court, with OCR fallback for scanned documents and a single normalized output schema.

PythonFastAPIPyMuPDF+3
Professional

High-Throughput Capture Pipeline with Checkpointed Recovery

~20/s cases captured per second

An end-to-end capture pipeline over an unstable court portal: TOTP login, search, download, multi-layout PDF parsing and payment cross-referencing. Stages are independently runnable, checkpointed and partitioned across workers without a broker.

PythonSeleniumPlaywright+3
In production

LunchSud: Multi-Tenant Scheduling with Realtime Sync

RLS isolation per congregation

A full-stack scheduling app in production where the database is the source of truth: double booking is prevented by a unique constraint rather than a check, tenants are isolated by Row Level Security, and changes propagate live to every open device.

Next.js 16React 19TypeScript+3
In development

mycapy: Multi-Tenant SaaS with Database-Enforced Isolation

~500 lines of schema and policy

A multi-tenant personal finance platform where tenant isolation lives in PostgreSQL rather than in application code. The data architecture and security model are complete; the product itself is still being built.

PostgreSQLSupabaseFastAPI+3
In production

Color Chroma: Color Studio

An interactive color studio to pick and convert between HEX and RGB in real time, with a color wheel, automatic text contrast and a reactive UI. Statically exported and published via CI/CD.

Next.js 16React 19TypeScript+2
Academic

Library System with Data Structures

A library management system in Java that applies classic data structures (graphs, binary search tree, queue and stack) to a real domain, all implemented from scratch.

JavaOOPData Structures
Academic

Machine Learning: Win Share Prediction (NBA)

A regression model to estimate the Win Share of NBA players from historical data (1950 to 2017), with exploratory analysis, preprocessing and performance evaluation.

Pythonscikit-learnpandas+1
Academic

Spa Management System (Web)

A web app to manage a spa: user authentication and an admin panel with CRUD for users, products, orders and massage therapists.

PHPMySQLBootstrap

Get in touch

Open to backend and distributed systems work. Tell me what you are building and which part is hard.

Up to 500 characters0 / 500