Available for new work

Now: learning Rust, on the way to systems work.

Emanuele Czofei

Software Engineer

Python · FastAPI · PostgreSQL · TypeScript · learning Rust

I build Python backends and AI integrations, and I check every claim against real output — tests, logs and the data underneath, not the explanation on top.

Gipuzkoa, Spain · EU citizen · Remote

What I build

Three things I build end to end.

01

Python backends

APIs, background workers and databases — FastAPI, Celery, Redis, PostgreSQL — built so a failure can be traced to its cause.

02

AI integrations

Search over real document sets and agents that call real tools — hybrid retrieval, reranking, LangGraph, MCP — with answers that cite where they came from.

03

Full-stack products

Next.js / TypeScript front ends on top of the backend, owned end to end — from the data model to the interface people actually use.

Projects

The work, with the receipts.

Docent — AI Support Agent for GitHub Issues

Agent System · pydantic/pydantic · Prototype
View repo

A support agent for the pydantic/pydantic repository. It reads a new issue, searches ~1,500 issues that were actually solved, and drafts a reply that cites them. Celery pollers keep the knowledge base current: when an issue closes, it is promoted only if it was really fixed.

PythonFastAPILangGraphCeleryPostgres/pgvectorRedisMCP
The architecture

Running: INTAKE → RESEARCH → DRAFT as a LangGraph state machine. Hybrid retrieval — pgvector plus Postgres full-text search, fused with reciprocal rank fusion and reranked. The research step calls the GitHub MCP server as a client through a read-only, ten-call allow-list. The biggest fix was in the data, not the prompt: storing solutions instead of closed tickets.

Spanish Safety RAG Assistant

View repo

A RAG assistant over the Spanish INSHT / NTP occupational-safety corpus. It answers regulatory queries with retrieved evidence and grounded generation — every claim traceable to a source.

PythonLangChainChromaDBVoyageAI voyage-3rerank-2.5Claude Haiku APINext.jsTypeScript
The differentiator

Every answer cites the INSHT / NTP document it came from. On 50 hand-labeled questions, the right document was in the top 8 results for 49 of 50.

search · results
Hit@8→ 0.98
MRR→ 0.955
Precision@8→ 0.69
Test set50 hand-labeled questions

Triage — Automated Code-Diagnosis Agent

Full-Stack Agent · Personal Project
View repo

A full-stack agent (RepoDoctor) that clones any repo, auto-detects its stack (Python / Node + package manager), installs dependencies, and runs its own test / build / lint suites to diagnose and explain what's failing. Built as a LangGraph state machine — clone → detect → install → diagnose → report — with every claim grounded in real command output. Each repo runs in an isolated sandbox with async subprocess execution and per-command timeouts; the Next.js frontend streams progress live via server-sent events.

PythonLangGraphOpenAI APINext.jsReactTypeScriptDocker Compose

SlideSpeak — Async Conversion Service

Technical Challenge · SlideSpeak
View repo

Fast-tracked past intermediate interview rounds. Built a PowerPoint-to-PDF async conversion service: upload triggers a Celery worker via Redis, LibreOffice converts server-side, the result lands in S3, the frontend polls for completion.

ReactTailwind CSSFastAPICeleryRedisAmazon S3LibreOffice

Skills

The stack I reach for.

Backend
PythonFastAPIPostgreSQL / pgvectorSQLAlchemyAlembicCeleryRedisREST APIsDocker
AI integration
RAG pipelineshybrid retrieval (BM25 + dense)cross-encoder rerankingLangGraphLangChainMCP clientstructured outputsClaude & OpenAI APIs
Frontend
Next.jsTypeScriptReactTailwind CSSSSE streaming
Infra
GitHub ActionsDocker ComposeRailwayVercelAWS S3
Learning now
Rust

Experience

Where I've shipped.

AI & Full-Stack Engineer Intern — Gaddr

Sept — Dec 2025
Stockholm, Sweden · Remote

Shipped authentication pages in Next.js / TypeScript and implemented Zod request/response validation for an external API integration.

Technical Challenge — SlideSpeak

2025
AI presentation startup

Built an async PowerPoint-to-PDF conversion service under time constraint. Fast-tracked past intermediate interview rounds.

Self-directed projects

2024 — Present
Gipuzkoa, Spain

Backends, AI integrations and full-stack products, built end to end — the projects above.

Contact

Hiring a junior engineer? Let's talk.