2026 —
Remote
Freelance developer
Independent
Backend and full-product work for clients, plus my own products. I scope, build, deploy and keep it running.
I build backend systems that have to work when real money and real users are on the line. When a product needs more than an API, I take it the rest of the way — web, mobile, infrastructure, store release.
02 — Short version
Six years shipping software, most of it backend. Most of them at a Brazilian product studio, where I went from intern to technical lead — with a short run on internal systems elsewhere in between — then two years on payments and merchant systems for a bank in Paraguay.
Along the way I published apps to both stores, ran the infrastructure under them, and kept building products of my own. The work below is the evidence.
Some of this was built for companies and clients, so I name my role instead of claiming the product.
Internal social network · API, app, realtime chat, admin panel · ongoing
An internal social network for one of Brazil's largest bookstore chains, built and maintained solo across four repositories: a NestJS API, an Expo app for store staff, a standalone realtime chat service, and a React admin panel. Still shipping.
Read the case study →


One of the largest banks in Paraguay, via DBC · microservices, AWS · 2024—2026
Two years inside a bank's payment stack: merchant onboarding, transaction flows, risk checks and provider integrations, as services that fail predictably instead of loudly.
Read the case study →
Transaction path
node.js · typescript · microservices · postgresql · dynamodb · aws
NestJS · PostgreSQL + pgvector · retrieval built by hand
Document Q&A where every answer cites the passage it came from. No framework doing the retrieval for me — chunking, embeddings and ranking are mine, which is the only way to know why an answer is wrong.
Read the case study →

Also built & shipped
Personal · SaaS
Vehicle auction alerts by subscription: a scheduled scraping worker, a messaging API with queueing and retries, WhatsApp and email delivery, paid tiers.
Personal · product
An eSIM store for travellers coming to Brazil. Catalogue, Stripe checkout, instant delivery by QR code, five languages, no manual step.
Open source
A document conversion library written to solve a problem at work, then open-sourced. 25 versions, ~10.5k npm downloads a year.
Personal
A Binance bot that keeps a human in the loop: every proposed trade lands in Telegram with its analysis and waits for a tap.
Personal
Realtime multiplayer deduction game. Anonymous play runs with no database and no session — a lint rule keeps it that way.
Personal
A shared online photo book for couples, with a page-turn reading experience. S3 storage, Stripe and Mercado Pago, delivery by QR code.
Freelance
A service marketplace app taken end to end: client discovery, API, app, deploy.
Freelance
A platform for a DJ project, built end to end — NestJS API, React front end, AWS.
Personal
A match organiser for my father’s peteca group: timers, scores, history, and the sound effects they actually asked for.
Open source
A pipeline that turns a Reddit thread into a finished video: scrape, narrate, sync, render. No manual editing.
Interlude · 01
Everything fails eventually. The job is deciding how.
Backend
Data
Messaging
Cloud & infra
Frontend & mobile
Testing
Practices
How I work
Boring architecture first. Complexity should have to argue for itself, and most of the time it loses.
Failure is a design decision. Retries, idempotency and timeouts belong in the first version, not the postmortem.
If I can't see it, I don't trust it. Logs, metrics and traces are part of the feature.
Shipped beats elegant. I'd rather maintain something real in production than defend a perfect diagram.
Process
Before a line of code: what breaks today, who pays when it does, and what the data actually looks like. Most of the work lives here, and it is the part nobody can skip on my behalf.
Endpoints, schemas, failure modes and limits, settled before implementation. The interface is the design — everything behind it stays free to change later.
Deploy small, instrument everything, and keep watching after release. A system nobody is measuring is a system nobody is running.
The same three passes whether it is a payment service for a bank or a side project nobody asked for.
Interlude · 02
Six years, five titles, one direction: more of the system, end to end.
2026 —
Remote
Independent
Backend and full-product work for clients, plus my own products. I scope, build, deploy and keep it running.
2024 — 2026
Remote · client in Paraguay
DBC Company
Payment and merchant microservices for one of the largest banks in Paraguay. Provider integrations, transaction and risk flows, event-driven services, PostgreSQL and DynamoDB on AWS.
node.js · typescript · microservices · postgresql · dynamodb · aws
2021 — 2024
Remote
Squadra Digital
Second run at the same company: three titles in under three years, ending with architecture decisions and delivery leadership on enterprise systems.
nestjs · typescript · angular · clean architecture · mssql · redis · rabbitmq · jest · jenkins
Second tenure — I left for Grupo Zelo and came back.
2021
Hybrid · Belo Horizonte
Grupo Zelo
Three months on internal systems for a large services group, on-site with the teams that used them. Hexagonal architecture, AWS messaging, tests written first.
node.js · nestjs · mongodb · aws sns/sqs/ecs · jest
2020 — 2021
Remote
Squadra Digital
Where it started. Nine months as an intern, then eight as a developer, learning to ship on systems other people depended on.
Interlude · 03
Remote since 2020 — which is how the map got involved.
I've worked remotely for most of my career, which turned out to be the best excuse to see places. Glaciers in Patagonia, trails on a mountain bike, a surfboard I'm still bad at.
Different countries mean different languages and different ways of working. Portuguese is my first, Spanish came from working with people who speak it, English from using it every day — and in 2026 I spent a few months in Ireland on a language exchange. Between contracts I build small products of my own, usually because something annoyed me enough to fix it.
Code is the work. Getting outside is how I reset.
Systems Analysis & Development, UNIASSELVI · Computer Networks, Senac Minas
07 — Contact
Elsewhere
Located
Brazil · UTC−3
Open to relocation
Available for
Remote roles worldwide
Contract & freelance work
Languages
Portuguese (native) · Spanish (fluent) · English (B2)