Retrieval

Ask this site
anything.

Hybrid retrieval over everything published here — dense vectors in pgvector fused with Postgres full-text search — answered by quoting the site back to you, with links to where each sentence came from. A language model is available too, and it runs on your own machine rather than on anyone's API key.

Match a job description.

Paste the requirements and get back what this portfolio can actually evidence, with the passage that proves each one — and, just as plainly, what it cannot.

Nothing pasted here is stored. It is read, matched against the index, and dropped.

How it works.

Embeddings, computed not bought

Every hosted embedding API is metered, and this project runs on free tiers only. So the vectors are hashed TF-IDF: terms hashed into 256 dimensions, weighted by sublinear term frequency times inverse document frequency, L2-normalised. That is a lexical embedding — it does not know that “Kubernetes” and “container orchestration” are related, and no tuning will teach it.

Which is why retrieval is hybrid

Dense lexical vectors and full-text search fail differently: one handles morphology and near-misses, the other nails a rare exact term. Both run on every query and the results are fused by reciprocal rank, which throws away two incomparable score scales and keeps only the ranks — so a passage both retrievers like beats one that either ranked first alone.

Extractive first, generated second

The answer above the fold is sentences taken verbatim from these pages, chosen by overlap with your question. It cannot hallucinate, because it cannot write. The model is opt-in, downloads once, runs on your GPU, and is handed the same passages as context.

What is in the index

52 passages, with vector search active, last rebuilt Aug 18, 2026. Projects, posts, skills, experience and services are chunked by heading rather than by character count, so each passage is about one idea and can be cited as a section.