About

I'm Michał Jonik. For three decades I've been taking software into places where nothing is clean: legacy systems, strict security policies, hundreds of applications and many teams who just need it to work.
I started in 1997 writing software for measuring machines — assembler, C/C++, then Java. At HP (2001–2006) I worked on banking and public-sector systems, including quality-control and change-management tooling. At IBM Software Services for WebSphere (2006–2011) I was the engineer sent to the customer: projects in Denmark, Germany, Saudi Arabia and Poland, sometimes as part of a crisis team brought in to put a stalled project back on track — and once invited back by name for the next phase.
Since then I've worked as an independent contractor. For the last 14 years that has meant working remotely from Poland for a major European bank in Brussels, building and running the platform that deploys hundreds of its enterprise applications as part of CI/CD.
What I work on now
I automate repetitive work wherever I find it — measuring machines, deployments for hundreds of applications, my own house. AI is the most powerful tool I've had for it: I use it to connect systems, to ship working tools in hours, and to run agents on real infrastructure. It's also the first tool I don't fully trust, so the guardrails come first.
Three decades of automating things taught me that automation rarely fails in the happy path. It fails at the edges: permissions, exceptions, people. AI agents hit the same edges, only faster. I work through them on real systems — my own infrastructure, run like a small client's — rather than in demos.
This blog is where I write it up, including what didn't work. There's also anarchive of my 2009–2013 blog — smart homes, WebSphere, AVR — which turned out to be about the same problems.