Senior Software Engineer / Ragusa, Sicily
Building the infrastructure between AI & data.
I build the plumbing that connects AI agents to real-world data — MCP servers, evaluation tooling, observability, and the developer tools around them.
// what I do
Three things,
done deeply.
I work where AI meets production data. Not demos — systems that run, observe themselves, and stay debuggable under load.
- based
- Ragusa, Sicily
- focus
- AI Infrastructure
- core
- .NET · Python · Go
- shipping
- since 2013
- status
- open to work
AI & Search Systems
Semantic search engines, RAG pipelines, MCP servers, agent observability, and agentic workflows that connect LLMs to real data sources.
Backend Engineering
Scalable microservices with .NET, FastAPI, PostgreSQL and Elasticsearch — shipped with Docker and CI/CD pipelines that don’t page you at 3am.
Developer Tools
Terminal utilities, CLI tools, and open-source productivity software. Built for the people who live in the terminal — because I’m one of them.
// selected work
Things I’ve shipped.
Open-source tools at the intersection of AI infrastructure, backend engineering and developer experience. All on GitHub.
project-graveyard
A memory for your unfinished projects
A local-first personal archivist for unfinished ideas and abandoned projects. Scans your repos, observes weak signals — commits, README language, silence — and remembers why each idea died, so the best parts can come back. No account, no cloud, no guilt.
domus-scope
Rent vs. buy decision lab
Simulates renting vs. buying over time through two lenses — unrecoverable costs and net worth — with every number explainable down to its formula. Bilingual (EN/IT), no backend: everything stays in your browser.
promptscore
Static analysis for LLM prompts
ESLint, but for prompts. Scores a prompt before it reaches the model — flags ambiguity, missing structure, and gaps against model-specific best practices. Deterministic rules, pluggable profiles, zero LLM calls.
driftcut
Canary testing for model migrations
Decision gating for LLM model swaps. Evaluates quality, latency and cost on a stratified sample before you commit to a full migration.
elastic-mcp
MCP server for Elasticsearch
Lets any AI agent query Elasticsearch in natural language. A pure translator between the MCP protocol and the ES API.
logq
Interactive log explorer for the terminal
Treats log files as queryable databases — live filtering, time histograms, JSON drill-down, pattern clustering. Zero external dependencies.
steplight
Local-first trace inspector for LLM agents
Load a trace, inspect what happened, and understand why. Timelines, tool calls, retries, token usage and latencies — all from the terminal.
design-court
A technical court for design documents
Adversarial review for RFCs and ADRs: agents propose findings, evidence is machine-verified against the document, and a Judge accepts, rejects or escalates. Every finding cites verifiable evidence.
// toolkit
What I reach for.
Languages
Backend
Data & Search
AI / ML
DevOps
// the path
Where I’ve worked.
Senior Software Engineer
@ Stuttgart ITLeading AI-powered solutions and .NET microservices. Building MCP servers and LLM evaluation tooling, architecting data-exchange platforms across distributed systems.
Software Engineer
@ Stuttgart ITDesigned enterprise-grade APIs and data pipelines. Migrated legacy systems to modern .NET, built internal tools and automation workflows.
Computer Engineer
@ Nat. Institute of Geophysics & VolcanologyBuilt real-time monitoring systems and collaborative data platforms for volcanological research — infrastructure for tephra observation networks and multi-hazard surveillance.
// let’s build something
Let’s connect.
Always up for discussing AI infrastructure, open-source tooling, and hard engineering problems. The inbox is open.