lukasrozado
Data Engineer — Financial Data Ingestion & Reconciliation
I've been investing in crypto since 2015 — that early conviction is what got me into Transfero. Since mid-2025 I've been building the data infrastructure for that institutional crypto/fintech operation: medallion warehouses, multi-chain (EVM/Solana) reconciliation, and BaaS settlement pipelines processing ~300K transactions/month, all in production. Alongside that, I run Augren solo: a market intelligence terminal for esports, in development since 2020. Core stack: Python, PostgreSQL, dbt, Dagster, Docker, Terraform.Every provider payload is persisted verbatim, before any typing or transform.
Typed columns are a convenience layered on top, never a replacement.
That rule exists for one reason: a number is only as trustworthy as the record
of how it got there. If nothing preserves what the source actually sent, you
cannot audit the number, and you cannot trust the code that produced it either.
Everything else lineage, medallion layering, reconciliation, idempotent
reprocessing follows from it.
At Transfero:
- A serverless data lake on Azure Functions ingesting ~300K transactions/month
across institutional sub-accounts, with a header-aware rate limiter that has
produced zero provider bans, and a PostgreSQL COPY + temp-table loader instead
of ORM inserts.
- A multi-chain ledger integrator across 15+ networks (EVM and Solana) using raw
RPC extraction and reverse block-scanning, with continuous auto-reconciliation
against live nodes and a fail-closed gate on any divergence.
- Bronze/Silver/Gold medallion models delivered end-to-end, plus checkpointed
state per atomic unit exact resume from the point of failure, idempotent by
the checkpoint + upsert pair.
- Platform modernization: Dagster for orchestration (same category as Airflow —
DAGs, sensors, backfill, retries), dbt on PostgreSQL, Docker, Terraform.
Outside work I run two systems in production, alone. Augren captures market and telemetry data 24/7 and publishes a warehouse by atomic pointer swap, so a failed publish serves the previous good snapshot stale, never corrupt. Migrating it between infrastructures without stopping capture required a single-writer interlock: new writers refuse to start unless explicitly enabled, so at no instant did two writers touch the same file. Verified by golden-master, SHA256-identical on both sides. Decodis loads ~206M public-registry records with PySpark and COPY at 200–500K rows/s, on a hexagonal architecture with Prometheus and CI.
Core stack: Python (Asyncio, Pandas, FastAPI) · SQL / PostgreSQL · dbt · Dagster ·
DuckDB · PySpark · Parquet · Docker · Terraform · Azure · AWS · Cloudflare Workers.
Portfolio and write-ups: https://lukasrozado.pages.dev/
Experience: 5 years
Yearly salary: $110,000
Hourly rate: $70
Nationality: 🇧🇷 Brazil
Residency: 🇧🇷 Brazil