Tibor Rogulja
Software Engineer
> _
## About
I'm a software engineer at Productive, based in Zagreb, Croatia. Officially I'm on the AI team — building agent frameworks, eval pipelines, and observability tooling — but I still write plenty of "regular" code too. TypeScript is technically my daily driver, though these days most of my time goes into crafting prompts in Claude Code and pretending that counts as programming.
I've been tinkering with computers since the mid-90s — Linux, PHP, the kind of stuff you learn from breaking things and reading man pages. That eventually turned into graphic design, freelance photography, and a stint as a college lecturer before I circled back to writing code full time. The thread connecting all of it? I really like figuring out how things work and then making them work better. Or at least differently. Sometimes just differently.
I'm a father of two, which means my joke repertoire has evolved from "decent" to "exclusively dad jokes." I regret nothing. Although, I do have a mild case of OCD — honestly, it should really be CDO, so that the letters are in alphabetical order.
Give me a messy codebase and I'll reorganize it before I fix the bug. It's a curse, really — but also the reason things I touch tend to stay maintainable. There's never enough time to make everything perfect, but that doesn't stop me from trying.
There's this special satisfaction when things come together and just work — when you automate something tedious, fix something nobody else could, and someone goes: "How did you..."
## Now
- > Building: Experiment observability for AI assistants at Productive — A/B testing infrastructure, trace analysis, and metrics that show which model changes actually move the needle.
- > Speaking: Preparing a talk for .debug 2026 (June 9–10, Zagreb) — submitted this week, details coming soon.
- > Crafting: An AI memory system for Claude Code — layered injection where behavioral corrections live in L0 and factual knowledge flows through lore. Trying to figure out the line between what an LLM should "know" vs how it should "behave."
- > Tinkering: Planning a blog series about building this memory system — working title "Memorija pamćenja." Less tutorial, more thinking out loud.
- > Expanding: The Rust CLI toolbox — because four CLIs apparently wasn't enough. Now there's seven.
Last updated: 2026-04-18
## Projects
declarative-pdf
PublishedAn npm library for generating PDF documents from declarative HTML templates.
cli-toolbox
ActiveA Cargo workspace of Rust CLIs for querying development services — built for both humans and AI agents.
DevPortal — AI Platform
ActiveInternal observability platform for AI products — dashboards, trace triage, and automated quality monitoring.
P-Scripts
ActiveA collection of zsh scripts for developer productivity — AWS auth, PR navigation, CI status, and test selection.
## Away from Keyboard
I fix things. Not just code.