Full-stack developer and technical project manager.
I build web apps with JavaScript, TypeScript and Python, and I bring 10+ years of shipping products as a project manager and founder. I like turning a vague idea into a plan, a plan into tickets, and tickets into working software, together with a team.
📅 iMeet / Slots · team project
A scheduling platform that matches trainees with volunteer mentors for 1:1 sessions. React 19 · React Router 7 · Vite 8 · Python / FastAPI · Supabase (PostgreSQL) · Google APIs
- Built the booking API: SQLAlchemy model and migration, create-booking endpoint, type-hinted CRUD and services.
- Integrated the Google Calendar API so every booking creates a calendar event with a Google Meet link, stored on the booking.
- Wrote endpoint tests for slots and built a read-only admin "All Slots" oversight page.
- Worked in a Git Flow team with feature branches, PR reviews, epics, API contracts and sprint plans.
🤖 projectX · CRM system built with AI agents
A CRM system built by orchestrating AI coding agents alongside human collaborators: planning work as issues, letting agents implement and review, and keeping quality high through code review and CI.
A travel-guide SPA: pick a country, click a region on an SVG map, and browse curated sights with photos, ticket links, opening hours and driving directions from the nearest airport.
React 19 · React Router 7 · Vite 8 · TypeScript · @svg-maps · Vitest · GitHub Actions
- Clickable, keyboard-navigable region maps built on
@svg-maps/spainand@svg-maps/canada, driven by one genericCountryMapcomponent. - Nested
:countryId/:regionId/:entryIdroutes with React Router 7, embedded Google Maps directions. - Code-splitting with
React.lazyand per-region dynamicimport(): one ~565 kB bundle became 6–19 kB chunks loaded on demand. - GitHub Actions CI runs lint, typecheck, tests and build on every push and pull request.
🐢 TurtleTalks · language learning for kids and adults
Word-match and sentence-builder games, spaced-repetition progress, an A1–C2 placement test and a pronunciation check. React 19 · TypeScript · Vite 8 · Python / FastAPI · Supabase (Postgres, Auth, Storage) · faster-whisper
- Rebuilt the Supabase schema from SQL: 7 tables, row-level security rules, a storage bucket and a 362-word seed dictionary.
- Python FastAPI backend in a Domain-Driven Design layout, with 172 passing
pytesttests,ruffandmypyclean. - Local speech-to-text with faster-whisper for pronunciation checks, with no paid API.
- Plan first. Epics, API contracts and sprint plans before code; I ran Scrum delivery as a PM for years.
- Automate the boring parts. GitHub Actions for checks and deployment so
mainstays deployable. - Build with people and agents. Clear tickets, small PRs and honest reviews, whether the collaborator is a teammate or an AI agent.
- 🎓 M.S. in Software Development & Electronic Systems, National Technical University (Ukraine)
- ☁️ AWS Certified Cloud Practitioner (CLF-C02), AWS re/Start graduate
- 💻 Full-Stack Web Developer program, Migracode Barcelona (2025 – 2026)
- 📦 Founder & CEO of Boxes.in.ua (2015 – 2023), Project Manager at Happy design.pro (2022 – 2025)
- 🌍 Ukrainian · Russian · English · Spanish
📍 Open to roles in product-driven engineering teams.



