Open to new roles from late November 2026
Hi, I'm Braňo 👋
Senior full-stack engineer. I build web products end to end, from Next.js frontends and LLM features to the Google Cloud infrastructure underneath.
Selected work
VenueScanner
Venue search on Elasticsearch
Found slow search queries in Google Cloud logs, proposed Elasticsearch and moved venue search off PostgreSQL.
A 60-result query went from about 340ms to 40ms.
VenueScanner
Booking classifier with LLMs
Runs every hour over enquiry conversations and flags bookings nobody recorded. Also built AI conversation summaries and a chat venue recommender.
The operations team found £58k of bookings in two days.
VenueScanner
The public Next.js site
Led the frontend through an App Router migration, technical SEO, accessibility and Core Web Vitals work.
Slow mobile interactions (INP) fixed across 1,822 URLs.
VenueScanner
From VMs to Cloud Run
Led the staged move of a Rails monolith and a Node.js backend to Google Cloud Run, with a Cloudflare Worker taking over the old nginx proxy rules. One way to deploy, monitor and log every service.
Production cutover with zero 5xx errors, all 72 routes checked.
VenueScanner
Nightly jobs that kept dying
Scheduled jobs were being killed for running out of memory. Puma sized its workers from the host machine’s CPU count, so a 2 vCPU container was running 4 of them. Capped it at 2.
No out-of-memory kills since. Peak memory down from 97% to under 80%.
VenueScanner
A sync that silently did nothing
A small refactor turned a model loader async, so the reporting sync returned early on every call for 11 months. There was a workaround in place but nobody had found the cause. Fixed it and backfilled the data.
67,739 records backfilled in about 30 minutes.
VenueScanner
Sitemaps and redirect loops
A platform migration left the sitemap job writing into a throwaway container for four months while every run reported success. Moved it to Cloud Storage, and traced infinite redirect loops on listing pages to a slug generator.
Sitemaps regenerate every week again, and the loops are gone.
VenueScanner
Photo pipeline rework
A Next.js upgrade started rejecting large photo originals. Reworked uploads to re-encode once and strip EXIF and GPS data, chunked under Cloud Run’s 32 MiB request limit, with sized copies for cards and galleries.
Pages serve sized copies, never the 50 MB originals.
VenueScanner
An inbox for the corporate events team
Designed and launched a new internal Rails app with an event pipeline, bulk enquiries and live messaging.
The team handles many clients from one place.
Open source
A fix in Docker Compose
up --abort-on-container-exittore the whole stack down whenever acompose runone-off exited. Bisected it to the release that broke it and fixed it upstream.Merged and released in Compose v5.5.0.
docker/compose#14038 →Research
G-QINDER
Predicts four-stranded DNA structures from sequence. Python API and a Rust and Tauri desktop app. I co-authored the paper.
Published in the International Journal of Molecular Sciences, 2023.
Read the paper →Nostradamus.cloud
Four AI and analytics products
Led full-stack work from idea to launch: Shopify sales forecasting, SEO analysis and GPT content tools.
Four products shipped. Mentored the junior developers.
Experience
- 2023 – 2026Senior Software Engineer, VenueScanner, London (remote)
- 2021 – 2023Full Stack Engineer, Nostradamus.cloud
- 2020 – 2023Frontend Developer, iERP.ai
- 2017 – 2023Freelance, Websites and apps for small businesses
- 2016 – 2021MSc and BSc in Informatics, Technical University of Košice
Tools
- FrontendTypeScript, React, Next.js, Tailwind CSS, Hotwire
- BackendNode.js, Ruby on Rails, Python, REST, GraphQL
- DataPostgreSQL, MongoDB, Elasticsearch
- CloudGoogle Cloud Run, Cloudflare Workers, Azure, Docker, GitLab CI/CD, Sentry
- AILLM APIs in production, MCP, Claude Code
- TestingCypress, Jest, RSpec