Software Engineer × ML Engineer

CajeRodrigues

I build production systems end-to-end — from crisp product frontends and resilient APIs to rigorous, leakage-safe ML pipelines. Below are a few things I've shipped.

About

Engineer across the whole stack

Software Engineering

Full-stack product work — Next.js frontends, FastAPI services, Postgres data models, passkey auth, and native SwiftUI apps. I care about clean seams, real deployments, and interfaces that feel effortless.

ML Engineering

Rigorous, reproducible ML: leakage-safe time-series splits, honest baselines (MASE), schema contracts with Pandera, MLflow tracking, and model publishing to Hugging Face — production practice, not just notebooks.

End-to-end delivery

I ship the whole stack: from data pipelines and model serving to the pixels a user touches. Each project here spans several tiers, wired together and running in production.

Next.jsReactTypeScriptTailwind CSSSwiftUISwiftFastAPIPythonPyTorchscikit-learnXGBoostPanderaMLflowHugging FacePostgresSQLAlchemyPlaidClaudeWebAuthnVercelNext.jsReactTypeScriptTailwind CSSSwiftUISwiftFastAPIPythonPyTorchscikit-learnXGBoostPanderaMLflowHugging FacePostgresSQLAlchemyPlaidClaudeWebAuthnVercel
Next.jsReactTypeScriptTailwind CSSSwiftUISwiftFastAPIPythonPyTorchscikit-learnXGBoostPanderaMLflowHugging FacePostgresSQLAlchemyPlaidClaudeWebAuthnVercelNext.jsReactTypeScriptTailwind CSSSwiftUISwiftFastAPIPythonPyTorchscikit-learnXGBoostPanderaMLflowHugging FacePostgresSQLAlchemyPlaidClaudeWebAuthnVercel
Selected Work

Systems I've designed, built and shipped

Live in production01

Project Millionaire

Real-time personal net-worth intelligence

A real-time personal net-worth dashboard that aggregates every account you own — banks, brokerages and credit cards via Plaid — alongside manual assets Plaid can't reach, then layers on AI-parsed email receipts and daily snapshots for a single, always-current picture of your wealth.

  • Plaid integration syncs banks, brokerages & cards in real time with encrypted token storage
  • Passkey-only WebAuthn auth — zero passwords, with step-up assertions for sensitive ops
  • AI receipt pipeline: Gmail OAuth + Claude Haiku extract line-items (~$0.001/email)
  • Automatic subscription detection derives recurring merchants, cadence & monthly cost
  • Daily 09:00 PST cron captures canonical net-worth snapshots for trend analysis
  • Fernet AES-128 encryption at rest for all Plaid/Gmail tokens and email bodies
  • Hand-rolled interactive SVG net-worth chart with hover crosshair & delta tooltips
Next.js 14TypeScriptTailwindFastAPIPythonNeon PostgresSQLAlchemyPlaidClaude HaikuWebAuthnVercelRender
3-tier ecosystem + ML study02

Solo Levelling

An anime-inspired strength-tracking ecosystem

A dark, anime-inspired powerlifting tracker built as a full ecosystem: a Next.js web app and a native SwiftUI iOS app both talk to one FastAPI backend, tracking the big three lifts through a bodyweight-adjusted DOTS score. A separate ML study forecasts next-week strength, detects plateaus and recommends calories.

  • Bodyweight-adjusted DOTS scoring with identical math across TypeScript, Swift & Python
  • Web + native iOS clients share one FastAPI backend and wire contract
  • iOS app: SwiftUI + @Observable, optimistic updates with rollback, verified DOTS parity
  • ML study implements the SAME pipeline 4 ways — Linear, XGBoost, LSTM & Transformer
  • Leakage-safe time-series: chronological splits enforced by regression tests
  • Honest MASE evaluation — models rejected if they can't beat naive persistence
  • MLflow experiment tracking + Hugging Face model publishing
Next.js 14ReactRechartsSwiftUISwift ObservationFastAPIscikit-learnXGBoostPyTorchPanderaMLflowHugging FaceNeon Postgres
Contact

Let's build something worth shipping.

Open to conversations about software, ML, and interesting problems. The fastest way to reach me is any of these.