Michael Kroes

Father of four, living in Haaksbergen. I care about people and I love technology. Home automation. With AI I experiment and push, and I validate what people are saying.

Engineer by background, 20+ years in software. Today I am one of two managers leading the platform stream at Thales: 60 people in eight engineering teams, with 25 direct reports. Before that I spent a decade self-employed and fully remote, working with distributed teams.

Currently — Software Engineering Manager, Thales

The day job

The detail lives on my CV. Ask me for it.

Running agents against my own infrastructure

Most of what I know about agentic AI I learned by pointing it at my own infrastructure. One git-tracked repository covers a Proxmox host, thirty-odd Docker Compose stacks, Home Assistant and UniFi networking, with a single deploy path and a commit before and after every change. Claude Code works in that repo, and firewall rules and DNS need an explicit human confirmation.

Around forty monitoring checks roll up into a single health signal. When it flips from healthy to broken, an AI session starts on its own and attempts the repair behind quality gates: a written authorization scoped to container-level recovery, a filter that refuses firewall, DNS, disk and data problems, a rate limit of three attempts per twenty-four hours, and a global kill switch. Out of scope, it investigates and reports, and leaves its session open so I can take over from my phone. Alerting is separate from the fixer, so a crashed agent can never suppress a page. I had an agent interview me on what it was and was not allowed to do, rather than writing the gates myself.

The same approach carries into side projects: a daily-refresh content pipeline for a local events aggregator runs as a scraper → verifier → QA-reviewer agent chain rather than a single unsupervised job, and a shipped bilingual mobile app uses a cost-tuned visual-QA subagent for UI regression checks. I've also introduced Claude Code tooling into an existing open-source medical-device codebase (Trio, an automated insulin-delivery system) without disrupting its established contributor workflow.

Shipped on the side

Beyond the day job

Since 2021 I've contributed to the Type 1 Diabetes Care community, improving Nightscout, AndroidAPS and Loop, the open-source tools behind DIY closed-loop insulin delivery. I also help new parents make sense of the technology after a diagnosis.

I've also been an open-source contributor and former co-maintainer of Mail-in-a-Box since 2015, reviewing pull requests and building features in Python and Bash.

Technical background

Most of my career was spent writing code, mostly in the .NET ecosystem, with working fluency across a few others as projects have called for it. I don't write code for work any more. Privately I still do.

Languages
C#, Kotlin, Python, TypeScript, Swift, Dart
Platforms
.NET, ASP.NET Core, Node.js, Flask, Vue.js, Flutter
Data
MS SQL Server, PostgreSQL, SQLite, MongoDB
Tooling
Azure DevOps, TeamCity, Git, Docker, CI/CD
Infrastructure
Proxmox, Docker Compose, Traefik, ZFS, SSO, monitoring & alerting
AI & agents
Claude Code, Codex, agentic coding workflows, LLM-assisted code generation