Senior Data Engineer · Fixing broken data platforms
I build and rebuild analytics stacks that teams can actually maintain. ClickHouse, Snowflake, Microsoft Fabric, Airflow, dbt — usually dropped onto an undocumented ERP and a Workato bill nobody wants to open. I ship fast, stay pragmatic, and leave platforms teams can run without me.
Also hands-on with Go for event-driven backends and analytics services.
1. Portfolio Backend (portfolio-backend)
Flask + SQLAlchemy backend powering rafaelortiz.dev — bilingual CV (EN/ES) with WeasyPrint PDF generation, Redis-backed caching, admin panel, and LLM-assisted content tooling (Gemini + Claude). Stack: Flask, SQLAlchemy, Jinja2, WeasyPrint, PostgreSQL, Redis.
2. Streaming Data Platform (data-platform)
Monorepo for event-driven data architecture: Redpanda (Kafka-compatible) ingestion, ClickHouse medallion lakehouse, dbt-managed transformations, and analytical marts. Stack: Redpanda, ClickHouse, dbt, Python, SQL.
High-concurrency mobile event platform backend — real-time WebSocket orchestration on Go, PostgreSQL (Neon), and AI-assisted features. Private repo until launch. Stack: Go, PostgreSQL, WebSockets, Docker.
Data & Analytics ClickHouse · Snowflake · Microsoft Fabric · BigQuery · Airflow · dbt · Redpanda (Kafka) · Delta Lake
Languages Python (Flask, Pandas, AsyncIO) · Go (kafka-go, pgx) · SQL (advanced modeling)
Cloud & Infrastructure AWS (S3, Lambda, Glue, Athena) · Azure (Fabric, Functions, ADF) · GCP (BigQuery, Cloud Run, Pub/Sub) · Docker · Terraform · Git/CI-CD
Business Intelligence Power BI · DAX · Row-Level Security · Power Query M · Power Apps / Automate
- Cut $60K/month in Snowflake costs for a US retail client by rebuilding their analytics stack on S3 + ClickHouse + Airflow + dbt. Led the migration end-to-end and mentored the incoming Airflow team.
- Built a Microsoft Fabric lakehouse covering 1,200+ retail stores at HONOR, replacing an Excel-based consolidation workflow with RLS-governed Power BI semantic models and a Flask operational app.
- Migrated ~1,350 data objects from Snowflake to ClickHouse in ~5 days using Python + Gemini/Claude tooling I built for dialect translation and DDL generation.
- Portfolio + CV: rafaelortiz.dev
- CV (direct): api.rafaelortiz.dev/cv
- LinkedIn: linkedin.com/in/rafaelortizaguilar
"Assemble your life, action by action. And be satisfied if each one achieves its goal." — Marcus Aurelius