// hello, world
I'm Marc Arndt.
VP of Engineering & Architecture @ Evana AG · Heidelberg, DE
Software engineer building production backends in Go and TypeScript, data pipelines, and developer tools. I like Kubernetes, clean APIs, and shipping things that hold up at 2am.
At Evana I lead engineering & architecture for the Evana360 document & dataroom platform. On the side I ship vibeship.eu — taking vibe-coded POCs to production.
About
I'm the VP of Engineering & Architecture at Evana AG, where I lead the engineering org and own the technical architecture for the Evana360 document & dataroom platform. Most days that means Go and TypeScript backends, Azure-hosted services, and the long tail of decisions that make a SaaS product feel reliable to its users.
Kubernetes is the default for everything I run — k3s on a Hetzner box for personal infra, AKS in production. I design OpenAPI-driven services, and have spent more time than I'd like on auth flows involving Azure AD B2C, Keycloak, and OIDC. I also build tooling around the Model Context Protocol — both hosting servers for product APIs and using them as a day-to-day engineering interface.
Outside of work I run a small homelab, deploy my own SaaS experiments (real domains, real certs, real observability), and occasionally write about the messy parts of getting software into production.
What I'm building now
updated continuously-
·
Evana360 — day job — VP of Engineering & Architecture at Evana AG. I lead the engineering org and own the technical architecture for the Evana360 document & dataroom platform (real-estate sector, Azure-hosted, B2C auth). The MCP server for the public API (evana-mcp) is one of the things that came out of that work and is now in production.
-
·
vibeship.eu — small service that takes vibe-coded prototypes (Cursor, Bolt, v0, Lovable, Replit) and ships them: real auth, real infra, real observability, real users. 7–14 day fixed-price hardening engagements. Live at vibeship.eu.
-
·
Labradoc — personal document management (Go backend + React/TypeScript frontend). OCR pipeline, classification, and a web UI for reviewing what the system extracted. Self-hosted on k3s. Public marketing site at labradoc.eu.
-
·
Infrana.eu — control-plane API for an EU SaaS product I'm building. TypeScript, containerised, with Stripe billing wired up end-to-end (in test mode today). Public site at infrana.eu.
-
·
ComplyEU — EU compliance tooling I'm building out: TypeScript frontend with a Go service tier behind it. Focused on the boring, important part of compliance work: making the audit trail reproducible. Public site at complyeu.eu.
-
·
This site — plain HTML, Tailwind via CDN, served from
nginx:alpineon the homelab k3s cluster, TLS via cert-manager + Let's Encrypt. No build step.
Projects
all repos →vibeship.eu
liveService that takes vibe-coded prototypes — Cursor, Bolt, v0, Lovable, Replit — and ships them to production: real auth, real infra, real observability, real users. 7–14 day fixed-price hardening.
Labradoc MCP Server
Model Context Protocol server for the public Labradoc API — exposes
document management, email ingestion, task extraction, and
integration features as MCP tools. Install with
npx @labradoc/mcp;
any MCP host (Hermes, Claude Code, Codex) can drive Labradoc with
just an API key.
Evana360
Document & dataroom platform for the German real-estate sector — structures, datarooms, documents, elements, OCR, and a web UI for reviewing what the system extracted. B2C auth, Azure-hosted, live in production with paying customers. Where I spend most of my daylight hours as VP of Engineering & Architecture.
labradoc
Personal document management — Go backend + React/TypeScript frontend. OCR pipeline, classification, inbox-style review of what the system extracted, and task tracking for the things that came in. Self-hosted on k3s; the public marketing site doubles as the docs.
complyEU
wipEU compliance tooling focused on the boring, important part of the job: making the audit trail reproducible. TypeScript frontend with a Go service tier behind it. Designed around the question "what would a reviewer actually need to see?" rather than the usual checkbox theatre.
Infrana
wipControl-plane API for an EU SaaS product. TypeScript everywhere, containerised, with Stripe billing wired up end-to-end (live mode coming once the first paying tenant is signed). Multi-tenant from day one so we don't have to refactor it in later.
Writing
blog repo →-
see repo
Notes & writeups
Blog lives in the
zamedic.github.iorepo — post-ability-writeups on auth, k8s, MCP, and the messy parts of getting software into production. -
vibeship.eu
vibeship.eu — diagnose page
A 7-question POC audit quiz: are you ready to ship, or are you still in demo-ware territory?
More long-form posts coming. Subscribe via watching the blog repo or just check back here.
Speaking
speaker bio →Speaking enquiries: arndt.marc@gmail.com.
Get in touch
The fastest way to reach me is email. For longer messages or collaboration, please include a short description of what you're working on and how I can help. For bugs in something I shipped, open an issue on the relevant repo instead.