My introduction to software goes back to a time when personal computers were only beginning to become widespread. What started as a curiosity about the Commodore 64 and Amiga grew into a professional journey spanning more than 30 years.

At first, I was fascinated by what I could make a computer do. Over time, my questions changed: Why does software fail under certain conditions? How can different systems work together reliably? What consequences might today’s technical decisions have years from now?

Those questions gradually led me from building individual applications to understanding systems as a whole, designing architectures, integrating platforms, and taking on technical leadership responsibilities.

A perspective shaped by experience

Throughout my career, I have worked on projects of different scales and requirements across healthcare, energy, the public sector, and enterprise software. My work has ranged from data exchange between hospital information systems to platforms communicating with industrial field devices, as well as enterprise applications and distributed services.

In some projects, I contributed directly to software development. In others, I focused on architecture and systems integration or took responsibility for technical teams and development processes.

These environments taught me a recurring lesson: software working in a development environment is not enough. It also needs to perform under real operating conditions, remain observable and maintainable, and evolve safely as requirements change.

That is why I look beyond code and technology choices to consider business needs, operational constraints, risks, and long-term sustainability.

Learning and adapting

My journey into software began largely through self-directed learning. Later, I studied Computer Programming and Public Administration. Exposure to different disciplines helped me connect technical decisions with organizational needs and decision-making processes.

As technology has evolved, I have continued learning. Today, I follow developments in distributed systems, modern software architecture, systems security, and artificial intelligence, exploring how they can be applied to real problems.

To me, experience does not mean resisting new approaches. It means being able to evaluate them by asking better questions.

How I work

I start by understanding the problem. Before choosing a technical solution, I want to understand the need, existing conditions, constraints, and measures of success.

I avoid unnecessary complexity. A solution’s value is not only in its technical capabilities, but also in whether a team can understand, extend, and operate it.

I evaluate alternatives and trade-offs. Architectural decisions rarely have a universal answer. What matters is understanding why a choice makes sense in a particular context and which trade-offs it entails.

I value knowledge sharing. Making the reasoning behind decisions visible, and ensuring knowledge remains within the team, helps systems stand the test of time.

I connect development with operations. The value of a system becomes clear in how reliably it serves its purpose throughout its working life.

Today

My current focus includes software architecture, assessing and modernizing existing systems, distributed systems, enterprise and industrial software, and systems integration. I am open to collaborations involving architecture reviews, technical consulting, project-based development, and technical leadership.

Alongside this work, I continue to learn, research, and experiment with AI-assisted software development and intelligent systems.

Through this site, I want to share not only what I learn, but also my perspectives on technical challenges encountered over the years, the reasoning behind architectural decisions, and the new questions I am exploring. Where useful, I will support these articles with small code examples and open-source projects.

Because to me, working with software is about more than writing code: understanding systems, designing them, building them, and helping them evolve.