Infrastructure
Hosted Services
The VPS runs several independent services, each serving a different purpose. They share the same host and the same reverse proxy, but are otherwise fully isolated from one another.
What's running
All services are Python-based except the MDM server, which is a Java application. Each one runs under its own systemd unit, with its own virtual environment or runtime, and communicates with the outside world only through the reverse proxy.
- Portfolio & API — this site. Built with Flask and served by Gunicorn. Also exposes an internal API used for telephony automation experiments.
- Webhook receiver — a FastAPI application that receives and processes inbound webhook payloads from external systems.
- JSON data API — a FastAPI service that exposes structured data behind API key authentication. Used for integrations and dashboards.
- Developer IDE — a self-hosted code-server instance, providing a VS Code environment accessible from any browser. Protected by password authentication.
- MDM server — Headwind MDM, a Tomcat-based open-source mobile device management platform used for managing Android devices.
Shared infrastructure
All services benefit from the same foundational layer: automatic HTTPS via the reverse proxy, process supervision via systemd, health checks via the monitoring layer, and structured logging via journald.
This architecture makes it straightforward to add new services — define a systemd unit, add a reverse proxy route, and the new service inherits all the operational infrastructure automatically.