Economista & Analista de DatosEconomist & Data Analyst
Colombia · remoto o relocalizaciónColombia · remote or open to relocation
visitor@portfolio:~$cat perfil.mdprofile.md
Me interesan los problemas donde los datos todavía no tienen forma: series que hay que limpiar, procesos manuales que piden automatización, preguntas de negocio que aún no son una métrica.
Soy economista con más de 5 años en análisis de datos y experiencia reciente en análisis económico. En el Banco de la República construí y validé indicadores del sistema financiero y la construcción para boletines técnicos — un trabajo donde un dato mal validado se arrastra hasta el informe final. Antes, casi cinco años en Vortech Express analizando indicadores comerciales y automatizando procesos.
I'm drawn to problems where the data has no shape yet: series that need cleaning, manual processes asking to be automated, business questions that aren't a metric yet.
I'm an economist with 5+ years in data analysis and recent experience in economic analysis. At Banco de la República I built and validated indicators for the financial system and construction for technical bulletins — work where one poorly validated figure carries all the way to the final report. Before that, nearly five years at Vortech Express analyzing commercial indicators and automating processes.
Reconstruí en SQL Server un hallazgo que ya había encontrado en Excel/Power BI en Vortech Express: la actividad de un cliente cae semanas antes de cancelar, no después.
Arquitectura por capas (bronze → silver → gold) y una consulta final con CTE + LAG() (window function) + JOIN que alinea a cada cliente cancelado con su propia fecha de cancelación.
Resultado: actividad estable (~12-14 logins/mes) hasta un mes antes de cancelar, luego cae a 2.8 — el punto exacto donde debería activarse una alerta de retención.
Dashboard en Power BI conectado directo a las vistas gold: el mismo hallazgo en formato visual (logins vs. meses antes de la cancelación, línea base de clientes activos), más desglose de cancelación por plan y ciudad.
SQL Server (T-SQL) · Power BI · Python (datos simulados). Dataset con el mismo patrón de churn de la operación real.
Rebuilt in SQL Server a finding I'd already made in Excel/Power BI at Vortech Express: customer activity drops weeks before a cancellation, not after.
Layered architecture (bronze → silver → gold) and a final query combining a CTE, a LAG() window function, and a JOIN that aligns every cancelled customer to their own cancellation date.
Result: engagement holds steady (~12-14 logins/month) until one month out, then collapses to 2.8 — the exact point where a retention alert should trigger.
Power BI dashboard connected directly to the gold views: the same finding as a visual (logins vs. months before cancellation, active-customer baseline), plus cancellation breakdowns by plan and city.
SQL Server (T-SQL) · Power BI · Python (simulated data). Dataset built to match the real business's churn pattern.
Predicción de cancelación de clientes (XGBoost)Customer churn prediction (XGBoost)
Formalicé con machine learning supervisado el mismo hallazgo del proyecto anterior: entrené un modelo XGBoost que predice la probabilidad de cancelación por cliente (dataset Telco Customer Churn, 7.043 clientes).
AUC-ROC de 0.84 — buena capacidad de discriminación entre quién cancela y quién no, en un target desbalanceado (~73%/27%).
La antigüedad del cliente aparece entre los principales factores de riesgo del modelo, confirmando con ML lo que ya había encontrado a mano en SQL. Fibra óptica y contrato mes a mes son los otros drivers principales.
Python · pandas · scikit-learn · XGBoost. Notebook documentado de principio a fin: limpieza, feature engineering, entrenamiento, evaluación e interpretación de resultados.
Formalized the same finding from the project above with supervised machine learning: trained an XGBoost model that predicts per-customer churn probability (Telco Customer Churn dataset, 7,043 customers).
AUC-ROC of 0.84 — strong discrimination between churners and non-churners on an imbalanced target (~73%/27%).
Customer tenure shows up among the model's top risk drivers, confirming with ML what I'd already found by hand in SQL. Fiber-optic service and month-to-month contracts are the other leading drivers.
Python · pandas · scikit-learn · XGBoost. Notebook documented end to end: cleaning, feature engineering, training, evaluation and interpretation.
Retención y predicción de fuga de ejecutivos (People Analytics)Executive retention & flight-risk modeling (People Analytics)
Modelado integral de People Analytics para fuerza comercial en servicios financieros (Seguros y Ahorro): combiné arquetipos no supervisados (PCA + K-Means) y clasificación supervisada (Árboles de Decisión, Random Forest, Regresión Logística) sobre 719 desvinculaciones históricas.
Diagnóstico de asimetría sectorial: identifiqué que el 62% de las fugas se concentran en Ahorro (68% despidos por bajo cumplimiento), mientras que en Seguros el 61% son renuncias voluntarias impulsadas por atracción de la competencia y estructura comisional.
Inflexión crítica a los 5 meses y arquetipos: el árbol de decisión reveló que ejecutivos con ≤ 4.5 meses tienen más del 71% de probabilidad de renuncia voluntaria. K-Means (K=3) aisló 3 arquetipos clave (Novatos vulnerables, Núcleo balanceado, Veteranos de alto rendimiento).
Despliegue y scoring sobre fuerza activa: clasifiqué a 554 ejecutivos activos identificando a 35 con riesgo crítico (>90% de probabilidad de renuncia). Implementación dual en R (FactoMineR, factoextra, rpart) y Python (scikit-learn, statsmodels, pandas) para corroborar resultados y asegurar reproducibilidad total.
End-to-end People Analytics model for commercial sales forces in financial services (Insurance & Savings): combined unsupervised archetyping (PCA + K-Means) and supervised classification (Decision Trees, Random Forest, Logistic Regression) across 719 historical departures.
Cross-sector turnover asymmetry: identified that 62% of attrition concentrates in Savings (68% involuntary dismissals driven by quota failure), whereas Insurance sees 61% voluntary resignations driven by competitor headhunting and commission structures.
5-Month critical inflection point & archetyping: decision trees pinpointed that reps with ≤ 4.5 months tenure face a >71% voluntary flight hazard. K-Means (K=3) segmented the workforce into 3 actionable behavioral archetypes (Struggling Novices, Balanced Core, Star Veterans).
Production scoring on active workforce: scored 554 currently active sales executives, flagging 35 in the critical flight-risk tier (>90% resignation probability). Dual implementation in R (FactoMineR, factoextra, rpart) and Python (scikit-learn, statsmodels, pandas) to cross-validate results and guarantee full reproducibility.
Análisis de la tasa de cambio COP/USD (v2.0 — Pipeline Automatizado)COP/USD exchange-rate analysis (v2.0 — Automated Pipeline)
Pipeline de ingesta automatizada (v2.0): conexión directa a la API REST pública de SUAMECA (Banco de la República) para extracción, validación y sincronización diaria de la TRM sin descargas manuales.
Detección de anomalías: identificación estadística de jornadas atípicas (1991–2026) con lectura económica de choques cambiarios mediante retornos diarios y Z-score (3σ).
Pronóstico: proyección de la TRM a 30 días con modelo econométrico Holt-Winters (suavizamiento exponencial triple).
Python · requests · pandas · statsmodels · matplotlib. Más de 12.700 observaciones oficiales del Banco de la República.
Automated Ingestion Pipeline (v2.0): direct integration with Banco de la República's official SUAMECA REST API for automated extraction, schema validation, and daily TRM sync without manual downloads.
Anomaly Detection: statistical identification of historical FX shocks (1991–2026) using daily returns and Z-score thresholding (±3σ).