Software engineer · AI & full-stack
Thirteen years of software, laid out as a shelf of small machines.
I'm Ademílson Tonato. I currently train frontier models at xAI. Before that: AI developer tooling at Firecrawl, marketplaces at Refurbed, and a quarter of a million test drives a month at Mercedes-Benz.io.
Everything on this page can be touched.
Six machinesHover one to inspect it, or click to open its section.
NOW · XAI
I spend most days reviewing code that nobody wrote.
At xAI I train frontier models on code: I read what a model produced, decide whether it would survive a real codebase, and explain precisely why not.
Performance, scalability, maintainability, reliability — the same four words I have argued about in pull requests since 2012. Thirteen years of reviewing other engineers turned out to be excellent preparation. The author just got a great deal faster.
Built withJavaScriptTypeScriptPythonNode.js
2025 · FIRECRAWL
The web was never written to be read by machines.
Firecrawl turns the badly-behaved open web into clean, structured text that models can use. I built the connective tissue around it: the integrations, and the dashboards an operator stares at when a job fails at three in the morning.
Most of it was unglamorous and load-bearing — idempotent jobs, retry and backoff, observability, containers, CI that holds under a traffic spike. Crawlers fail constantly. The engineering is in making failure boring.
Built withn8nZapierMakeCrewAILangChainLlamaIndexCoinbase x402
2023 – 2025 · REFURBED
Eventually, scaling software meant scaling people too.
I led an eight-engineer squad, and the honest surprise was how little of the job was code.
RFCs, so a decision outlives its meeting. Feature flags, so a release stops being a cliff. Automated gates, so review is about design, not semicolons. On-call playbooks, so the worst night of the quarter is survivable. None of these numbers is something one engineer can do alone.
- cycle time
- −28%
- test coverage
- 85%
- production incidents
- −37%
REFURBED · AT SCALE
Two and a half million orders a year is a different kind of problem.
Around 125,000 customers a month. At that volume a percentage point stops being a metric and becomes a warehouse.
Latency came down through TypeScript refactors, Redis caching in the service layer behind gRPC, and a pipeline that stopped being the bottleneck. The merchant growth is really a story about admin tooling nobody outside the company will ever see.
- checkout conversion
- +1.6 pts
- p95 API latency
- −22%
- active merchants
- +48%
Built withTypeScriptRedisgRPC
REFURBED · ARCHITECTURE
Sometimes the best way to build together is to stop deploying together.
The admin surface had quietly become one object that everybody had to agree about before anyone could ship.
Module Federation split it along domain lines: each team owns a piece and releases on its own clock, behind weekly release trains and careful canary rollouts. The architecture diagram got uglier; the week got considerably calmer.
- deploy frequency
- 3×
- rollback MTTR
- −60%
Built withModule FederationVueTypeScript
2021 – 2022 · MOTORK
Seven hundred dealerships, one console, and a great deal of untyped JavaScript.
LeadSparK is the CRM car dealerships live inside all day — 700+ automotive clients, Ford and BMW among them. I owned its frontend architecture.
I led the TypeScript migration, which is less a refactor than an archaeology project with a deadline, and standardised the component set — the kind of result that only ever shows up as other people shipping sooner.
- runtime errors
- −45%
- build time
- −22%
- UI reuse
- +60%
- CSS payload
- −35%
Built withTypeScriptTailwind CSSCypressJest
2020 – 2021 · MERCEDES-BENZ.IO
A quarter of a million people a month, asking to drive a car.
Online test-drive booking across 30+ markets, roughly 250,000 bookings a month from three regional clusters. I managed the five engineers who built it.
Performance was the product: Vue SSR, code splitting and genuinely boring image work. A/B testing then took drop-offs down — more evidence that many conversion problems are latency problems in disguise.
- LCP
- −35%
- CLS
- 0.05
- booking drop-offs
- −18%
Built withVueSSRA/B testing
2012 – 2018 · WHERE IT STARTED
It began with PHP, a beige computer, and no real idea what I was doing.
ERP systems, hybrid mobile apps and web platforms in Brazil — then a retail application running in 900+ physical stores for Brazil's largest retailer.
After that, enterprise work in Lisbon, including an integration with a pharmacy robot that genuinely existed and genuinely moved. Every framework on this page will be legacy eventually. Somewhere around the third rewrite, that stopped bothering me.
- first production code
- 2012
- stores running my retail app
- 900+
TOOLBOX
Tools change. The way I think matters more.
Every object in this tray was, at some point, the obvious answer. Several stayed the obvious answer right up until they abruptly weren't.
What carries between them is smaller and duller than a tech stack: read the system before changing it, make the contract explicit, and leave the thing easier to understand than you found it.
Twenty toolsPick a tool to inspect it.
CURRENTLY
I'm interested in the space where software starts acting for itself.
My recent work sits between software engineering and AI systems: agents, RAG pipelines, developer tooling, structured APIs, tool calling, and workflows where software reasons about what to do next.
I don't think the interesting question is whether AI replaces software engineering. It is what engineers can build once software can take part in the work.
Learning
Still studying the systems I'm helping build.
- PGDip in Applied AI EngineeringUNIPDS
- Expected February 2027
- MBA in Software ArchitectureFaculdade Iguaçu
- 2025
- MBA in Software Architecture and SolutionsXP Educação
- 2023
- BSc in Systems Analysis and DevelopmentUNISINOS
- 2018
Click to open