00 Input · Prešov, Slovakia

Software that sees,
decides, and ships.

I'm Roman Šafranko — a software developer working across computer vision, local LLM tooling, and browser-first products. My bachelor's thesis taught a robotic arm to take plain-language voice commands and carry them out, entirely offline. I like the part where every piece has to work at once.

Status
Open — roles & freelance
Based
Prešov, Slovakia · CET
Latest
VB Visualizer v2
Reply time
< 24 hours

01 Detections

Selected work

4 systems · 2025—2026
2025—2026 Bachelor's thesis · TU Košice

Voice-controlled robotic arm

A Dobot Magician that takes instructions in plain language. Speech-to-text feeds a locally hosted LLM with tool-calling; those tools drive OpenCV detection, OCR, and a homography that maps camera pixels into arm coordinates. Nothing leaves the machine.

  • Runs fully offline on local hardware — no cloud APIs anywhere in the loop.
  • Letter detection with rotation-safe pick-and-place.
  • Built and defended as my bachelor's thesis, June 2026.
PythonOpenCVTesseract OCR local LLMtool callinghomographyspeech-to-text
2026 Personal product · in production

VB Visualizer

A browser music visualizer aimed at short-form video. Web Audio drives the real-time analysis, several visual modes render to canvas, and LRCLIB lyrics stay in sync — clean 9:16 output without ever leaving the tab.

  • Real-time audio analysis and synced lyrics, entirely client-side.
  • Rebuilt as a modular v2 so adding a visual mode stops being copy-paste.
JavaScriptWeb Audio APICanvas LRCLIBbrowser-first
2025—2026 Side project

TFT analytics platform

A stats platform for Teamfight Tactics on top of the Riot API — player lookup, match history, composition analysis, and the internal tooling that turns raw match data into something you can actually read a meta out of.

  • Comp breakdowns built for fast analysis, not just an API echo.
  • Documentation-driven, so the codebase stays navigable as it grows.
Next.jsReactNode.js Riot APIPostgreSQL
2026 Tool

CV Studio

A résumé builder with live preview, an ATS-safe mode, and content linting as you type. Everything runs client-side, so editing stays instant and the document never leaves the browser.

  • Fully client-side — instant load, private by construction.
  • ATS checks live inside the editor rather than bolted on at export.
Reactclient-sideATS-safePDF export

02 Heuristics

How I work

4 rules I actually follow

Ship the whole pipeline.

I'd rather have one complete system than four impressive fragments. Prototype, interface, integration, deploy — the interesting engineering is in making them hold together, not in proving any one piece alone.

Debug at the boundaries.

The expensive bugs live where two systems meet. I instrument the seams first and trace the whole flow before I start changing things in the middle.

Local-first, no black boxes.

I want to be able to open the thing that broke. In practice that means fewer dependencies, and actually understanding the ones I keep.

Small tools, sharp edges.

Clear scope beats broad scope. I'd rather a tool do one job precisely than ten jobs approximately.

03 Capabilities

Stack

daily drivers first
Vision & robotics
Python · OpenCV · Tesseract OCR · homography calibration · Dobot · Arduino/ESP · ROS2 · Webots
AI & LLM systems
local LLM hosting · tool calling · structured outputs · prompt design · speech-to-text · multimodal pipelines
Web & product
TypeScript · React · Next.js · Node.js · Canvas · Web Audio · WebGPU / three.js
Data & platform
PostgreSQL · REST APIs · data pipelines · analytics tooling · Docker · Linux
Education
B.Sc. Computer Science · Technical University of Košice · 2023—2026

04 Output

Have something that needs building?

I'm looking for software engineering roles and freelance work — web, backend, vision, LLM tooling, whatever the problem actually calls for. Email is best; you'll hear back inside a day.

GitHub Download CV

Prefer Slovak? Píšte pokojne po slovensky.