This is a submission for the New Year, New You Portfolio Challenge Presented by Google AI
About Me
Hi! I'm Matteo Avigni, a Software Developer & Data Engineer with a background in Quantitative Finance. I specialize in transforming complex data into high-performing Web Apps and Desktop Solutions.
Portfolio
Here is my new AI-powered portfolio:
(If the embed doesn't load immediately, you can visit the site here: Live Demo)
How I Built It
For this challenge, I decided to upgrade my static GitHub Pages portfolio into a dynamic, AI-powered web application hosted on Google Cloud Run.
The Tech Stack:
- Backend: Python (Flask) served via Gunicorn.
-
AI: Google Gemini API (Model:
gemini-2.5-flash) for the chat assistant. - Infrastructure: Docker container deployed on Google Cloud Run.
- Frontend: HTML5, CSS3, JavaScript (Vanilla).
Key Features:
- AI Chat Assistant: I integrated a chatbot that acts as my "Virtual Agent". It uses
gemini-2.5-flashto answer questions about my CV, skills, and projects in real-time. - Dynamic Context: The AI is context-aware. I used "System Instructions" to feed it my professional profile, so it answers exactly like I would during an interview.
- Smart Language Detection: The backend detects the user's language (Italian or English) and instructs Gemini to reply in the same language.
- Cloud Native: The app is containerized and runs serverless on Cloud Run, ensuring scalability and zero maintenance.
Why Google Cloud Run?
I chose Cloud Run because I needed a way to host a Python backend (for the API key security) without managing servers. The gcloud deployment was seamless, and the "Scale to Zero" feature ensures I don't pay when no one is visiting.
What I'm Most Proud Of
I'm particularly proud of the "Chat with my CV" feature. Instead of forcing recruiters to read a long PDF, they can now simply ask: "What is Matteo's experience with Django?" and get an immediate, accurate answer. It makes the portfolio interactive and demonstrates my skills with GenAI and Cloud Engineering in practice.
Source Code / Repository:
https://github.com/matteoavigni/portfolio-challenge
Submitted for the New Year, New You Portfolio Challenge 2026.
Top comments (0)