Fullstack & AI engineer, Kassel. This is an island built from the
63 services I actually run. You start in the air — fly over it, and point
the crosshair at anything to find out what it is.
or press any movement key
W A S Dwalk and strafe
Mouselook
← →turn, without a mouse
R Flook up and down
Space / Crise and drop
Vland, and fly again
Shiftfaster
Aimpoint the crosshair at anything to read about it
Eopen whatever you are aiming at
Mmap
Escrelease the mouse
On a phone: left thumb moves, right thumb looks, and the
buttons on the right change your height.
Software engineer at LWV Hessen in Kassel: Jakarta EE with JAX-RS and CDI, Angular 17, architecture work, code reviews and the Linux deployments. Alongside that I run 63 services of my own on one VPS and a Raspberry Pi — the auth server, the deploys and the backups included.
How I got here
2015 — Abitur, Syria. Final grade 1.8
2016 — German to C1. Arrived in Germany and learned the language
2018 — Informatik. First serious code
2020 — B.Sc. Wirtschaftsinformatik. Hochschule Fulda, to 2025. Thesis: a UX evaluation model built around the eDok application at LWV Hessen
2023 — LWV Hessen. Software engineer. Jakarta EE with JAX-RS and CDI, Angular 17, architecture, code reviews, Linux deployments
2025 — M.Sc. Praktische Informatik. FernUniversität in Hagen. AI, IT security, cloud infrastructure, operating systems
Authorization code flow with PKCE and a local JWKS endpoint. Every other app here is a registered client. Written instead of installed, because that was the only way to learn it.
Drive coding agents from a browser. Node, WebSocket, node-pty over tmux so sessions outlive the tab, OIDC with PKCE, a second factor, reachable only over the VPN.
A self-play DQN written in plain NumPy, no framework, paired with a local one-billion-parameter model that commentates the match. CPU only, because that is all the box has.