Current work

Build brief

Complete

AI Digital Twin

The problem

A portfolio makes a recruiter or potential client do the work: read the About section, open a case study, cross-reference the resume, guess whether a specific background fits their role. Most visitors have about a minute and a narrow question they never get to ask.

Who feels it

Recruiters, hiring managers, and prospective clients screening for a specific fit — cloud, reliability, AI engineering, implementation work — who want a direct answer rather than a tour of the site.

What I built

An AI assistant that answers questions about my background, experience, and projects in my own framing. It is grounded in a curated professional summary and my LinkedIn export, refuses to invent anything it wasn't told, captures contact details when a visitor wants a follow-up, and flags any question it couldn't answer so I can improve the source material. It runs as its own page and embeds directly into the portfolio at /twin.

What it demonstrates

A deployed LLM application end to end: system-prompt grounding, an OpenAI tool-calling loop, function tools wired to a real notification channel, standalone and embedded delivery, and a push-to-deploy pipeline to Hugging Face Spaces. It is a course exercise taken past the course — its own repo, its own docs, its own CI/CD.

  • PythonGeneral-purpose language used here for data processing and AI services.
  • OpenAI APIHosted API for OpenAI's language models, including tool calling.
  • GradioPython library that turns a function into a shareable web UI, used for ML demos.
  • Hugging Face SpacesHosting platform for machine-learning apps and interactive demos.
  • GitHub ActionsGitHub's built-in automation for CI/CD and repository workflows.
  • uvFast Python package installer and virtual-environment manager.
  • PushoverService for sending push notifications to a phone or desktop.