About

I live in Sarajevo, Bosnia & Herzegovina. I've been building software for over 15 years, and most of my time now goes into leading engineering teams rather than writing the code myself.

I started in 2013 at an enterprise company and stayed a little over four years. That's where I learned how large systems get built, operated, and kept alive, which turns out to be a very different problem from getting them built in the first place. Almost everything since then has been startups, and I still reach back for those lessons.

The early years were backend work and distributed systems. Writing code that someone else has to pick up a year later is what taught me how systems age. I lead the same way now: keep it simple, keep it reliable, and don't design anything the team can't hold in their heads.

These days I lead teams of up to 15 engineers. Most of my attention goes to architecture, execution, and the standards a team holds itself to. In practice that means clear system boundaries, APIs that don't surprise anyone, and cloud infrastructure people can ship on without breaking things.

A lot of that work is now about AI. Teams only get real use out of AI when the system underneath is easy to reason about and safe to change. The model is rarely the hard part. The engineering around it usually is.

Go is my main language, and most of my technical work sits in backend architecture, API design, and cloud infrastructure. I'm currently directing engineering at Kayse, an AI legal tech platform.

Outside of work I contribute to open source and write about engineering leadership and applied AI. Mostly the practical parts, the kind you only pick up from running real systems.

If you want to talk about product strategy, engineering leadership, or working together, the contact page and LinkedIn are the easiest ways to reach me.