Xavier OC

I build Python applications — web, data, and everything in between.

Over the past year I've built Flask web applications, data analysis pipelines, and automation scripts in Python — from local scripts to deployed production apps. This portfolio is the work.

Open to

Junior Python Developer or Junior Data Analyst roles — Madrid or remote. Available immediately.

Highlights

Featured Projects

A few highlights from across Web, Data, and Software.

View all
AI Portfolio Assistant cover image

AI Portfolio Assistant

Web

I built a conversational AI assistant directly into my portfolio site. Recruiters and visitors can ask anything about my projects, skills, and background — and get grounded, cited answers in real time, powered by RAG (Retrieval-Augmented Generation) and Llama 3.3 70B via Groq.

CNN Food Classifier cover image

CNN Food Classifier

Data

I built a convolutional neural network that classifies food images into 101 categories using two-stage transfer learning with MobileNetV2. Upload any food photo and get instant top-3 predictions with confidence scores — live on Hugging Face Spaces.

AWS Lambda & Amazon Bedrock: Benchmarking TF-IDF, LSTM, and Zero-Shot LLM Sentiment Analysis cover image

AWS Lambda & Amazon Bedrock: Benchmarking TF-IDF, LSTM, and Zero-Shot LLM Sentiment Analysis

Data

A full ML pipeline benchmarking TF-IDF + Logistic Regression, a Keras LSTM, and Claude Haiku via Amazon Bedrock on 50,000 IMDb reviews. The winning model is deployed live as a serverless REST API on AWS Lambda with a Flask frontend.

Professional Portfolio Site cover image

Professional Portfolio Site

Web

Full-stack Flask portfolio with a custom admin dashboard, PostgreSQL, a public REST API, media management, automated backups, and CI/CD deployment to Railway via GitHub Actions.

Stock Trading News Alert cover image

Stock Trading News Alert

Software

Monitors a stock's daily price change and fires WhatsApp alerts with the top 3 news headlines via Twilio whenever the move exceeds a configurable threshold.

Workout Tracker cover image

Workout Tracker

Software

Log workouts to Google Sheets using plain English. A local LLM parses your session, calories are calculated via the MET formula, and each exercise is written as a timestamped row — no manual entry.

Blackjack cover image

Blackjack

Software

Terminal Blackjack in Python — two versions side by side. Procedural course solution plus a full OOP rebuild with animated ASCII card UI, chip system, split, double down, insurance, and difficulty modes.

Programming Language Workforce Strategy — Data Analysis cover image

Programming Language Workforce Strategy — Data Analysis

Data

Stack Overflow lost 97.7% of its post volume since 2016 — and its momentum now anti-correlates with hiring demand. This project proves the signal is broken, then builds a four-source replacement index to answer which languages to hire for.

Overview

What you’ll find here

  • Flask applications with clean Jinja architecture
  • Data projects using Python, Pandas, and visualization
  • Automation and software builds with strong structure
Core categories

Focus areas

Web

Flask, Jinja, routing, templates, Bootstrap layout discipline.

Data

Pandas workflows, cleaning, analysis, visualization, reporting.

Software

Python structure, automation scripts, clean interfaces and logic.

Want to see everything?

Browse the full projects hub with categories and tags.

Browse Projects