Gyovana Santos do Prado

Data & AI Engineer — Human in the Loop

São Paulo, Brazil

Data & AI Engineer with 9 years in tech, focused on building scalable data pipelines and designing AI systems where human judgment stays in the loop. Specialist in dbt, BigQuery, and GCP, with hands-on experience building Claude-based solutions — custom skills, MCP servers, and API integrations — for enterprise clients. Comfortable with both technical and business stakeholders, and recognized for leading internal training and data democratization.

6 repos0 followers0 stars

Now

updated Jul 9, 2026

Feed

  1. Shipped

    Shipped the engine behind this very site: a bilingual portfolio whose content is curated automatically from real work sessions. A session-end hook evaluates each Claude Code session against a relevance rubric; when something clears the bar, it is written up in two languages, sanitized, and committed as a draft that publishes with one command.

    Outcome: The site you are reading was produced by this pipeline.

    Technical detail

    Three components: an Astro static site (i18n EN/PT, feed/projects/CV rendered from JSON at build time), a Python MCP server exposing five tools (log_activity, review_and_publish, add_project, update_now, get_portfolio_state) that write through the GitHub Contents API, and a Stop hook that embeds the rubric verbatim so criteria changes require no code changes. Validation runs three layers deep: JSON Schema, bilingual completeness (a missing translation fails the build, by design), and a local denylist as a deterministic backstop behind the LLM's category-based sanitization.

    astromcppythonclaude-codei18n
  2. Learning

    First real-world use of CSS scroll-driven animations: this feed's timeline draws itself as you scroll, with zero JavaScript. The motion concept for the site — pulse, trace, breath — had to communicate 'alive' without a single animation library.

    Outcome: Feed timeline draws on scroll in ~20 lines of CSS; zero JS, zero libraries.

    Technical detail

    animation-timeline: view() maps an animation's progress to an element's position in the viewport — the timeline border scales from 0 to full height as each entry crosses it. Wrapped in @supports so unsupported browsers just see the static border, and disabled under prefers-reduced-motion. The rest of the motion system is a ~30-line inline IntersectionObserver (staggered reveal) gated behind an html.js class, so a JavaScript failure can never leave content hidden.

    cssscroll-driven-animationsprogressive-enhancement
  3. Decision

    My portfolio needed to update itself without becoming a server to maintain. The decision: no CMS, no database, no backend — content lives as JSON in a git repository, every update is a commit, and the site is a static build triggered by pushes. A drafts branch acts as a mandatory buffer: automation can write, but nothing goes public without a human merge.

    Outcome: Zero infrastructure to operate; every content change is auditable in git history.

    Technical detail

    A competent peer might reasonably have chosen a headless CMS or a small API. Git-as-database won on three fronts: full history and rollback for free, zero infrastructure cost, and a deploy pipeline (push → rebuild) that static hosts provide out of the box. The drafts branch exists for confidentiality, not relevance — client work must never auto-publish without a human glance. Trade-off accepted: no real-time updates, which a portfolio doesn't need.

    architecturestatic-sitegitastro

Projects

Living Portfolio

Jul 2026 – present

A portfolio that updates itself: a static Astro site whose content is curated automatically from real work sessions through an MCP publishing pipeline.

Case study

The problem: personal sites go stale because keeping them updated is a chore. The idea: a session-end hook evaluates each Claude Code session against a relevance rubric; when the work is portfolio-worthy, an LLM writes it up in two layers (narrative + technical) and two languages (EN/PT), sanitizes client-confidential details by category, and commits it to a drafts branch. The owner publishes with one command. The site is a static build — 'aliveness' comes from the content pipeline, not a running server. Git is the database: every change is a commit, giving full history and zero infra cost.

astrotypescriptpythonmcpclaude-codegithub-actions

Critical Pipeline Optimization (88% Faster)

Jun 2023 – Sep 2023

A materialized table was timing out. Modularization and modeling best practices cut its execution time by up to 88%.

Case study

A critical materialized table had grown to the point of timing out. I broke the monolithic transformation into modular steps and applied dbt best practices, reducing execution time by up to 88% and removing the timeouts. I also used AI-assisted techniques (prompt engineering and in-context learning) to speed up the investigation and validate candidate refactors.

dbtbigquerysqlprompt-engineering

Multi-Outcome Journey Modeling in dbt

Jan 2023 – Jun 2023

Redesigned a data model whose original shape couldn't represent multiple outcomes per user journey, using data-warehouse modeling concepts to make it concise and scalable.

Case study

The existing model assumed a single outcome per journey, which broke down as the business needed to track several. I identified the structural limitation, then proposed and implemented a restructured dbt model aligned with the business rules — trading a rigid, hard-to-extend shape for one that stays concise as new outcomes are added.

dbtbigquerysql

Experience

Data & AI Engineer (Human in the Loop) · Supernova Labs

Feb 2026 – present

Remote

Design and operate data and AI pipelines on GCP, building Claude-based tooling that lets models operate with each client's knowledge, rules, and context while keeping human judgment in the loop.

  • Design and operate data/AI pipelines on GCP (Cloud Functions, BigQuery), integrating external APIs to feed structured context to LLMs and process outputs before final consumption.
  • Build reusable Claude skills and custom MCP (Model Context Protocol) servers for Claude Code, Claude API, and Claude Enterprise.
  • Delivered an AI-powered analytics pipeline for a large enterprise fitness client that reads survey responses at scale, with human validation and refinement kept in the loop.
  • Curate prompts and context to ensure consistent, production-grade LLM outputs, and translate business needs into architectures where AI accelerates delivery without replacing human judgment.

Data Engineer (Mid-Level) · UOL EdTech

Oct 2022 – Jan 2026

São Paulo, Brazil

Built scalable pipelines with dbt Cloud, BigQuery, and Looker, and led data-modeling and performance work alongside data democratization initiatives.

  • Restructured data models to support multiple outcomes per user journey.
  • Optimized a critical table, reducing execution time by 88%.
  • Contributed to RFCs, solution reviews, and stakeholder interviews.
  • Onboarded junior and mid-level hires and created an internal knowledge-sharing channel for data democratization.

Data Engineer (Mid-Level) · Tenbu

Dec 2021 – Jul 2022

São Paulo, Brazil

Developed ETL pipelines and analytical solutions, supporting squads from requirements gathering to delivery.

  • Developed ETL pipelines using IBM DataStage and designed Control-M workflows.
  • Built dashboards in Power BI and supported squads with requirements gathering and delivery.

Associate Application Developer & BTP Intern · IBM Brasil

Aug 2019 – May 2021

São Paulo, Brazil

Developed and maintained ETL jobs and supported BI reporting in an enterprise environment.

  • Developed and maintained ETL jobs with IBM DataStage.
  • Produced technical documentation, managed OLAP cubes, and supported reporting with IBM Cognos.

Skills

Languages & Frameworks
SQLPythonJinja
Data & Cloud
dbt CloudBigQueryGCPCloud FunctionsGitHub Actions
AI & LLM Engineering
Claude APIClaude CodeClaude EnterpriseMCPClaude SkillsPrompt Engineering
BI & Visualization
LookerPower BIIBM Cognos
ETL & Orchestration
dbtIBM DataStageControl-MPrefect

Education

Postgraduate in Data Science and Artificial Intelligence · PUC-RSNov 2023 – present
Associate Degree in Systems Analysis and Development · UNASPApr 2018 – Jun 2020
High School with Technical Degree in IT · ETEC Euro Albino de SouzaFeb 2015 – Dec 2018

Certifications

dbt Learning Path · dbt LabsMay 2025
dbt Fundamentals · dbt LabsMay 2025
Refactoring SQL to Modularity · dbt LabsMay 2025
Big Data Foundations · IBMNov 2019
Python for Data Science · IBMOct 2019

Languages

PortugueseNative
EnglishAdvanced

Awards

1st place — ABStartups Hackathon (university challenge focused on innovative, market-driven solutions) · ABStartups2019