Skip to content
Carlos Rubio-Marroquin

Projects

City planning decides who can reach what, and Seattle publishes the data behind those decisions. Publishing it is not the same as being able to ask it a question, which is what the energy agent is for. The two FCP Insight systems are the same instinct applied at work, where the data is private but the problem is identical.

Asked in plain English

What share of annual filings are marked compliant?


93.4% compliant

35,796 filings of 38,309

Agentic Data Analyst

Live

Seattle publishes its building-energy filings, but open data still means a raw schema and SQL, not something you can ask a question. This agent reads the schema, writes and runs its own SQL, and explains what came back in plain English. When a query fails, the error goes back to the model as data and it rewrites the query itself. Answers cost about $0.004 each, down from $0.011 once I found a prompt-caching bug that reported zeros rather than an error.

  • Python
  • Claude API
  • SQL
  • scikit-learn
  • Plotly
  • Cloud Run
propose, then approveWatch threebid boardsSeleniumRead everyspec PDFtext, then OCRGrade eachbidClaude APIRoute to asalespersonSales tunesthe rulesFlask

Construction Bid Grading System

Live

The three bid boards are old enough that none has an API, so the pipeline logs in and reads them the way a person would. Grading rules live in the dashboard rather than in code, because a rule the sales team needs an engineer to change is a rule that goes stale. Edits run through propose and approve, so no one silently reweights everybody's leads. OCR is a later addition, a fallback for the one board that started serving scans with no text layer.

  • Python
  • Selenium
  • Flask
  • Claude API
  • EasyOCR
  • Docker
  • Azure

In production at FCP Insight. Source is private.

Timecard Visualization Service

Live

Turns raw timecard exports into a sunburst of where labor hours actually go. The shape came out of a conversation with the CEO, who uses it: parts of a whole, with any wedge opening into the detail underneath. It returns an embeddable chart rather than its own page, because it had to drop into Electrolytix, the product FCP Insight already ships. It looked right in isolation and wrong once embedded, odd borders and undersized type, which is the kind of thing you only find by shipping.

  • Python
  • Flask
  • pandas
  • Plotly
  • Docker
  • Jenkins
  • AWS ECR

In production at FCP Insight. Source is private.

Featured by our CEO on LinkedIn

About

I'm a data science student at the University of Washington, working where machine learning meets data visualization, with a focus on turning analysis into decisions people can act on.

Seattle is where I first relied on public transit. Getting to friends, to family, to the airport stopped being a problem I had to solve, and that is when city planning stopped being abstract to me. An apartment block and a supermarket separated by one road with no crossing is a decision somebody made, and the data behind decisions like it is usually public. That is what pulled me toward civic data.

The environmental half is closer to home. I'm from Mexico, where the dry season is something you build against, and climate change keeps making it harder to plan for. Building energy filings sit exactly where those two interests meet, which is why the agent project runs on them and not on a sample dataset.

At FCP Insight I build Python dashboards and data tooling that surface operational trends and inform planning decisions. I'm looking for new-grad roles where modeling and clear communication both matter.

Skills

Languages
Python, SQL, Java, R
Data & ML
pandas, NumPy, scikit-learn, Plotly, Power BI
Web
HTML, CSS, JavaScript, React, Astro
Tools
Git, Docker, MySQL

Education

University of Washington

B.S. Informatics: Data Science

Minor in Business Administration (Foster School of Business)

Class of 2027 · GPA 3.7

Armon Dadgar & Joshua Kalla Scholarship