Examples
On every project I handled the backend, the frontend, and deployment.


Hotel operations portal
A portal for running a hotel. The front desk sees guest arrivals and their check-in readiness; guests fill in their details in advance and buy add-on services. Reservations are pulled from Cloudbeds and Hostaway. Each hotel runs on its own domain, and a manager can onboard a new hotel themselves, without a developer. It involved multi-tenancy, domain-based routing, and authorization for two different user groups. Deployed across several hotels, over a hundred rooms, thousands of guests a month.
- Kotlin
- Spring Boot
- React
- Vite
- TypeScript
- PostgreSQL
- RabbitMQ
- MinIO


Revenue dashboard
An analytics layer on top of data from every connected PMS. It aggregates reservations, occupancy, and revenue across a portfolio of properties and builds pricing on top of that — price recommendations based on demand trends. Users assemble their own views from widgets. It also included an experiment with an AI chat over the underlying data, where you can ask in natural language instead of clicking through filters.
- Django
- React
- PostgreSQL
- Redis
- Gemini Flash


Document processing
Takes in accounting documents by email or upload, extracts structured data from them, and passes it on to accounting. Processing runs asynchronously through a queue, extraction via an LLM. I handled the connection to accounting tools through MCP connectors, so new ones can be added without touching the application core. In production it processes on the order of hundreds of documents a month across dozens of accounts.
- Kotlin
- Spring Boot
- React
- PostgreSQL
- RabbitMQ
- Gemini Flash


Bank aggregator
Merges balances and transactions from dozens of bank accounts into a single view, so you don't have to check several banking portals separately. Normalizes the differing data formats from individual banks into one shared model.
- Kotlin
- Spring Boot
- React
- PostgreSQL


Prague guide
A mobile guide to Prague for hotel guests, built as a PWA so it installs without an app store. An interactive walkthrough of the city, with content tied to a specific hotel.
- Node.js
- NestJS
- React
- TypeScript
- MySQL

Interactive map, National Museum
A touch map for a visitor kiosk at the National Museum. Design and implementation, running on a public installation. We built similar interactive maps for M2C and Innovis too.
- HTML
- CSS
- JavaScript