RMMD/data engineer
Ricardo M. Maldonado — Mathematician · Mexico City (remote)

I build and operate production data systems on hardware that shouldn't be enough.

Five years building data products — four consulting for international organisations, now running a 14-app production ecosystem as a one-person data team. Extending that craft into LLM agents.

See selected work Get in touch
14 apps in production · <100ms analytical queries · government-deployed platform
01Approach

Performance is a feature, not an afterthought.

I come from mathematics, and I treat data systems the same way: find the cheapest correct path. Most of my work runs on constrained hardware — on-prem servers, a single VPS — so I lean on columnar formats, lazy evaluation and push-down filtering to move only the data a query actually needs.

Business logic lives in SQL, not scattered across notebooks — every chart traces back to a query I can defend. That same discipline carries into LLM work: an agent is only as good as the layer feeding it, so I put deterministic guards around a non-deterministic model. I build the whole path — extraction, transformation, and the app people actually use.

02The stack

Tools I reach for.

SQL & sources

SQL (business logic)Databricks SQLPostgreSQL / PostGISAzure SQLSQLite (WAL)

Analytical engines

DuckDBPolarsArrow · ParquetPandas

Python & backend

FastAPIPydantic v2REST APIsPlaywrightEChartsasync

LLM & agents

LangGraphText-to-SQLPrompt eng.Eval suitesGemini APILM Studio (local)

Ops

Linux VPSDocker · TraefikPM2Git
03Selected work

Things I've shipped.

LLM

Electoral Analyst Bot

Conversational Text-to-SQL agent · personal project

A LangGraph agent that answers natural-language questions about Mexican elections (2018–2024). Intent router, LLM SQL generation, semantic validation guards, an iterative corrector, and an evaluation suite over a PostgreSQL star schema (~1.2M rows). The guards reject incorrect SQL before it runs — deterministic quality control on top of an LLM.

LangGraphGeminiPostgreSQLsqlglotDocker
Graph, guards and eval suite complete — Telegram handler and VPS deploy in progress
DATA

Growth & Retention Monitor

Analytical platform · Natura&Co México

Retention and churn analytics over a direct-sales network of roughly half a million independent sellers. Hourly ETL from Databricks SQL into DuckDB, business rules in Polars, a FastAPI service and an ECharts front end. Sub-100ms analytical queries, zero-downtime refresh by atomic database swap under PM2, and aggregate-to-detail reconciliation verified at 100%.

DuckDBPolarsFastAPIEChartsPM2
GOV

Child Labour Data Explorer

ILO → hosted by the Mexican government (STPS)

Interactive analysis of child-labour data aligned to SDG 8.7: a logistic-regression risk model, multi-level Leaflet maps, downloadable tables. Deployed on a Linux VPS with full documentation and a vulnerability assessment. Now hosted at trabajoinfantil.stps.gob.mx.

RShinyLeafletLogistic reg.VPS
trabajoinfantil.stps.gob.mx →
TOOL

Prepara tus Datos

Independent project · no-code data prep

A no-code web app for cleaning and transforming data, built for NGOs and non-technical users. Six transformation modules — imputation, deduplication, pivot, filtering, grouping and fuzzy joins — behind an interface designed for people who don't write code.

RShinytidyversestringdist

Also, at Natura&Co: a sell-out monitor that replaced four disconnected Tableau dashboards; an ETL over ~60M records that cut report generation from 45 minutes to under 3 seconds; RPA pipelines in Playwright; and an event-attendance app in daily field use across 300+ events. Earlier: a normalized child-risk index built for UNICEF from INEGI microdata, and a peer-reviewed psychometric validation using Kendall's W and Fleiss' Kappa (CISETC 2023).

04Contact

Open to remote data engineering roles.

I build the pipelines, the services and the apps on top of them — end to end, for teams that need the whole path covered rather than one slice of it. Increasingly, that includes agents. If that's the kind of problem you have, let's talk.