000
Vadym Podganiuk
AI & Python Developer
Prague, CZ
Available for work

I build software that runs in production, not in demos.

Open to remote EU contracts LLM applications Python backend Automation
Scroll

( 01 — Approach )

Most portfolios list tools. This one shows what broke, and what I did about it.

( 02 — Selected work )

( 03 — Background )

I have been on both sides of a hiring pipeline. That is why I build tools for it.

I started as a Python developer in 2022, building Telegram bots. In 2025 I moved into IT recruitment in Prague: first at a large systems integrator, then at a staffing company, sourcing and screening engineers for enterprise clients.

Two years of watching how much of that work is done by hand sent me back to code. Now I build the tools I wished I had: automation, LLM applications, internal systems. Everything on this page is shipped and in use.

Languages

Python, TypeScript, JavaScript, SQL, Bash, HTML, CSS

AI / LLM

Anthropic API and SDK, Claude models, prompt design, guardrails and forbidden-phrase checks, structured JSON output, output validation in code, few-shot examples, retry loops with feedback, rejection logging for prompt tuning, LangChain

Backend

FastAPI, Uvicorn, Pydantic, REST API design, HTTP Basic auth, OAuth 2.0, background tasks, PostgreSQL, SQLite, Supabase, Row Level Security, triggers and SQL functions, sequences, realtime subscriptions

Integrations & scraping

LinkedIn REST API, Telegram Bot API, Telegram public mirror, Google OAuth, requests, BeautifulSoup, lxml, ICS and JSON exports

Frontend

React 18, hooks, Context API, Vite, TypeScript, vanilla JS SPAs, native drag-and-drop, Three.js, responsive CSS with custom properties, IntersectionObserver, no-framework pages like this one

Ops

Linux (Ubuntu), Hetzner VPS, systemd services and timers, nginx reverse proxy, Let's Encrypt, ufw, SSH and rsync, bash provisioning, GitHub Actions CI/CD, Vercel, DNS and custom domains, Docker, environment and secrets management

Data

pandas, NumPy, Jupyter, matplotlib, seaborn, CSV pipelines, data cleaning, time-series aggregation

Practice

Git and GitHub, dry-run modes, TestClient smoke tests, pytest, testing on real accounts, Figma to code, design tokens, Claude Code as a daily tool

( 04 — How I work )

  1. Production first.

    I test on real data and real accounts, not fixtures, and I fix what the real output shows. The first version ships early and gets corrected in the open.

  2. Guardrails are a feature.

    With LLMs, the contract for what the model may not do matters more than the prompt for what it should. Anything the code can decide, the code decides.

  3. Boring infrastructure.

    A VPS, systemd and SQLite beat a platform whenever the platform's limits would become my problem. Fewer moving parts, fewer 3 a.m. surprises.

  4. AI-native workflow.

    I build with Claude Code in the loop for design, implementation and review. I own the architecture, the verification and what ships.

( 05 — Looking for )

A remote developer contract in the EU. LLM application work or Python backend.

Availability
Now. Full-time contract.
Where
Remote within the EU. Based in Prague, Czech Republic.
Languages
English, Ukrainian, Russian, Czech (B1)
Education
Applied mathematics, Lviv Polytechnic National University

( 06 — Contact )

Let's talk.