My home lab is where I try technologies before using them at work, and where I reproduce payment-domain problems on top of open specifications. I don’t publish the source code of these projects, but I’m happy to talk about the architecture and decisions.
Directory Server emulator (EMV 3-D Secure)
An emulator of the Directory Server component of the EMV 3-D Secure 2.1.0 protocol, built for load testing. Handles the authentication flow: AReq/ARes and RReq/RRes.
- Why: load-testing 3DS components without touching external systems — a controlled traffic source with predictable behavior;
- Stack: Go, standard library; protocol per the public EMVCo specification;
- Result: reproducible load-test scenarios, testing degradations and timeouts of adjacent systems.
ISO 8583 stub emulator
A host-interface stub speaking ISO 8583, built for load testing. Supports the core message types: 0100/0110 (authorization), 0200/0210 (financial), 0400/0420 (reversal), 0800 (network management).
- Why: testing integrations and performance without a real host;
- Stack: Go;
- Result: controlled responses, latency and error simulation, a stable load-test bench.
CertWatch — TLS certificate monitoring
A service that tracks TLS certificate expiration across domains and alerts via Telegram, email, and webhooks.
- Stack: Go, PostgreSQL, HTMX; one-time-password (OTP) authentication;
- Why: an expired certificate is a classic silent incident; I wanted a simple self-hosted tool with no external dependencies.
Home lab
The platform behind everything above: a Proxmox hypervisor (including a GPU for AI workloads), a TrueNAS SCALE NAS (ZFS), and containers/VMs for services.
- Virtualization: Proxmox VE, LXC/Incus containers;
- Storage: TrueNAS SCALE, ZFS, backups;
- Infrastructure as code: Ansible, GitLab CI / Gitea;
- Self-hosted services: Wiki.js, Gitea, and more.
Kubernetes cluster
A practice HA cluster in the lab — hands-on follow-up to a Kubernetes course: application deployments, Helm, Ingress, observability, failure experiments. Detailed topology write-up (in Russian): blog post.
Local AI stack
A fully local LLM environment on the home server GPU:
- Ollama — local LLMs; OpenWebUI — interface; SearXNG — private metasearch; ComfyUI — image generation;
- Main use case — RAG over technical documentation (PDF): fast answers across a large corpus of vendor documents without sending data anywhere.