I move across the whole stack — and the breadth isn't shallow, it comes from genuine obsession. Tech isn't my job; it's the language I think in.

These days I build the backend and AI systems that turn LLM prototypes into production — multi-agent orchestration, real-time streaming, and the infrastructure that makes agents reliable at scale. I care about one thing above the rest: quality. I treat it as a moral position, not a preference.

I'm learning to say out loud what I've always said in code. This site is part of that — not building an image, removing one.

Stack
TypeScriptNode.jsNestJSReact.NETTemporalLangGraphAWSKubernetesPostgreSQL
Experience
  • Feb 2025 – June 2026

    Engineering Tech Lead, Cyberbase Systems Inc. · Remote · Dortmund

    I lead backend and AI architecture on a four-engineer team building an AI-powered cybersecurity & compliance platform, in production at Fortune 500 industrial and chemical manufacturers.

    The product automates vendor security review — due-diligence questionnaires that took CISOs 10–40 hours by hand now finish in minutes, and 100-page contracts get redlined in under five.

    What I build and lead:

    • A Temporal-orchestrated network of six specialized AI agents — legal, security, technical, policy-writer and proof-checker among them — communicating over the A2A protocol; durable, crash-safe runs with saga-pattern compensation.
    • The long-document redlining pipeline: a contract fans out into ranges reviewed in parallel (LangGraph) and merges back into the source file as native Word tracked changes — every clause gets reviewed no matter how long the contract, rather than the model truncating or skimming it.
    • Horizontally-scaled LLM streaming with custom resumable streams — zero data loss and seamless handoff across a user's devices, at 5,000 concurrent streams and p99 under 20ms.
    • The retrieval and evaluation layer: pgvector embedding search, a Neo4j knowledge graph, schema-validated function calling with output guardrails, and prompt versioning with LLM-as-judge evals in Langfuse gating model changes.
    • A provider-agnostic LLM gateway (LiteLLM) across OpenAI, Anthropic, AWS Bedrock and Google Vertex AI — load balancing, same-model failover on rate limits, layered retry with backoff.
    • A .NET / OpenXML microservice reading and writing Word and Excel in native format, preserving original formatting and emitting tracked changes — the grounding layer behind the "upload a contract → get it back completed" flow.
    • Policy-based authorization (OPA) across HTTP and WebSocket with registry-versioned policies; Clerk identity (SSO / MFA) and machine-to-machine service auth.
    • Multi-cloud infrastructure-as-code (OpenTofu + Terragrunt) across AWS + Azure — EKS / AKS, ECS, WAF / GuardDuty — with per-customer BYOC isolation for security buyers.

    I own code review and mentoring across backend and frontend, plus PR coverage gates and LLM observability (Langfuse, OpenTelemetry).

  • Jun 2024 – Feb 2025

    Software Engineer, Code & Cakes · Remote

    Full-stack delivery from concept to ship across client engagements; owned R&D, estimation, and tech-stack selection. This is where the Cyberbase product was incubated before the team went direct.

    • Shipped vtnews.ai, a large-scale news aggregator serving 50,000+ users/day at launch.
    • Shipped letsgain.com, a teaching-materials platform used by 30 schools / 300 teachers.
  • Aug 2021 – May 2024

    Software Engineer, AnvilEight — UN World Food Programme · Kharkiv, Ukraine

    Contracted to the UN World Food Programme (HQ Rome), building internal analytics dashboards for a 20,000-staff organization across 120+ countries; worked directly with stakeholders in Rome and London.

    • Built the data-collection and processing flows behind the dashboards, ingesting from multiple internal WFP source systems.
    • Built PDF and Excel report-generation pipelines producing ~1,000 reports/week; integrated authentication via Azure AD and AWS Cognito.
    • Led the React 16 → 18 migration on a Webpack 5 build — 500+ components, 15+ screens, ~200k LoC — unblocking new feature work.