João Caldeira
Lisbon, Portugal

Hi there, I'm

João Caldeira

a

Mostly I build things, break things, and automate the boring parts, and somewhere in there I fell for trading systems.

Published in Computational Economics (Springer)

01 / About

A bit about me

Lately I'm just as focused on how I build as what I build, squeezing the most out of coding agents and new AI tooling to make my day-to-day workflow faster and sharper.

Financial markets have a particular grip on me: my MSc thesis dug into ML models for predicting market trends, and I've been hooked on trading systems ever since.

Away from the keyboard, I'm usually reading about space exploration, putting in work at the gym, or three tabs deep in the latest AI news.

Based in Lisbon  ·  MSc in Computer Science & Engineering

02 / Experience

Where I've worked & studied

Work
Education

Software Engineer Work

Infosistema
Mar 2025 - Present
  • Building an AI-powered B2B SaaS platform end-to-end, designing document-understanding systems that extract structured data from unstructured documents and remove hours of manual work.
  • Engineering agentic AI pipelines (LLMs, RAG, MCP, Google ADK) and the data integrations behind them, connecting cloud-storage sources with secure, permission-scoped access.
  • Owning the full lifecycle across a microservices architecture, from backend APIs to frontend dashboards, deployed on GCP with automated CI/CD and built to enterprise security standards.
PythonC# / .NETLLMsOCRMCPGoogle ADKGCPDockerMachine LearningMicroservices

03 / Projects

Things I've built

SmartPenny

Personal-finance web app: a unified dashboard for spending and investments, smart invoice/receipt parsing with automatic categorization (DQA), and budget management with real-time tracking.

FastAPIReactLLMsOCRVercelGCP
Private project

Portfolio v2

This very website, built with Astro: full-screen scroll-snap sections, an interactive particle backdrop and a tabbed experience timeline.

AstroCSSJavaScript

Ricochet Robots Solver

Solves the Ricochet Robots puzzle in the fewest moves by formulating it as a tree-search problem and traversing it with the RBFS (Recursive Best-First Search) algorithm.

PythonSearch TreeRBFS

04 / Contact

Let's build something

Got a project, an opportunity, or just want to say hi? My inbox is always open.

© 2026 João Caldeira · Built with Astro