About Me
Who I Am
I'm a 17-year-old Platform Developer apprentice based in Switzerland. I care about understanding the systems I run — not just using tools, but knowing why they work the way they do and making sure every layer of my stack matches what I actually want.
I learn by building real things. The home lab documented on this site isn't a lab exercise; it's the infrastructure I depend on every day. Running it on real hardware with real users keeps me honest.
What I'm Into
Languages
My main languages are Rust and Go. Rust for things where I want correctness and performance locked in at compile time, Go for when I want a service up fast and boring. I also work comfortably in TypeScript/React and Python when the job calls for it.
Linux & Open Source
I run Artix Linux with dinit and doas on my workstation. I migrated off Arch because I wanted an init system and a privilege-escalation tool that matched my mental model — systemd and sudo do their jobs, but I prefer simpler pieces I can reason about end-to-end.
Kubernetes & Platform Engineering
I run a single-node k0s cluster on bare metal. Everything is managed through FluxCD from a Git repository — no manual kubectl, no drift. Storage is ZFS via OpenEBS ZFS-LocalPV, networking is Cilium with L2 announcements, ingress is Traefik, and Postgres is managed by CloudNativePG. Secrets are encrypted at rest with SOPS + Age.
ICT Championships
I compete in the Swiss ICT Championships, representing my region. It's been a good forcing function for getting faster at the fundamentals.
PC Building & Hardware
I build and service PCs as a side business at cherkaoui.ch. It keeps me grounded in the physical layer — cable management, airflow, BIOS quirks, the stuff that never shows up in a dockerfile.
How I Work
I figure out what I want by seeing what I don't want. I try things, keep what fits, and replace what doesn't. That's how I ended up on k0s (after kubeadm), FluxCD (after OpenTofu), Artix (after Arch), and ZFS (after LVM). None of those switches were dogmatic — each one fixed a specific annoyance.
I document things as I build them so I don't have to remember everything. That's mostly what this site is for.
Get in Touch
- Email: contact@hide.cherkaoui.ch
- GitHub: HadiCherkaoui
- GitLab: hadicherkaoui
- Portfolio: hadi.cherkaoui.ch