← Blog
9 June 2026

Why I'm building my own AI-augmented portfolio

A self-promotion site that demonstrates the approach, not just describes it — and what I learned setting it up in a week.

Most portfolio sites are essentially static CVs with a nicer font. That works, but it always felt like a missed opportunity — especially for someone whose actual job is building data pipelines and AI workflows.

So when I decided to seriously invest in self-promotion this year, I set a simple rule: the site itself should be an example of what I do, not just a description of it.

What that means in practice

The site runs on Next.js 16 with Tailwind CSS, deployed to Vercel via GitHub — nothing exotic, but it's a real stack with real CI/CD. Every page is typed TypeScript, and the blog you're reading now is MDX: plain markdown files that the framework turns into rendered pages. Adding a new post is just adding a file.

The more interesting part is coming: a recruiter Q&A bot on the contact page. Instead of making visitors read through my full CV, they'll be able to ask natural questions — "Is Radoslav open to remote work? What's his day rate? Has he worked in fintech?" — and get direct answers from an LLM grounded in a structured profile.json. If the bot doesn't know something, it says so and points them to my email.

That's a small but real example of how I'd wire an agent into an existing workflow for a client.

Why a structured profile, not just a prompt

I could have given the LLM my CV as raw text. Instead I built a data/profile.json that explicitly separates availability, rate range, tech stack, ideal companies, and pre-written Q&A pairs. The bot reads from that structure, not from an unstructured blob.

This matters for the same reason it matters in data engineering: garbage in, garbage out. A well-structured source makes the output more reliable, easier to update, and simpler to debug when something is wrong.

What I'm learning from building this

I've worked in data engineering for over a decade, but I spend most of my time inside company infrastructure — tools and pipelines that nobody outside the team ever sees. Building something public-facing, with my name on the domain, forces a different kind of thinking. Every copy decision is a positioning decision. Every page structure is a UX decision.

It also makes the AI integration choices more honest. I'm not adding a bot because it's trendy — I'm adding it because it genuinely reduces friction for recruiters and potential collaborators who don't want to read a two-page CV to find out if I'm available.

That's the standard I try to apply with clients too: add AI where it reduces friction or improves a real decision. Not everywhere, just where it actually helps.


The site is live at radkoseno.eu. I'll keep adding to it as the bot gets wired up and more projects get documented. If you have a data or AI problem you'd like to talk through, get in touch.