• File

Юрій

Fullstack-розробник

Considering positions:
Fullstack-розробник, Full stack програміст, Front-end програміст, React-розробник, DevOps engineer, Web-програміст, адміністратор Linux, системний адміністратор, Embedded-розробник, Javascript-програміст
Age:
14 years
City of residence:
Zaporizhzhia
Ready to work:
Remote, Zaporizhzhia

Contact information

The job seeker has provided: Phone numberEmailMessenger

Name, contacts and photo are only available to registered employers. To access the candidates' personal information, log in as an employer or sign up.

Uploaded file

The file contains 2 more pages.

Quick view version

This resume is posted as a file. The quick view option may be worse than the original resume.

Резюме
Yuriy Tsapiy
Full-stack розробник · TypeScript · React / Next.js · PostgreSQL ·
C++ (ESP32)

Контакти
[open contact info](look above in the "contact info" section)
Telegram
GitHub

Навички
Мови програмування
TypeScript, JavaScript
C++ (ESP32)
SQL (PostgreSQL)
HTML, CSS, SCSS

Фреймворки та бібліотеки
React, Next.js, Redux Toolkit, TanStack Query, React Router
Tailwind, Bootstrap
Supabase, Firebase
Leaflet, Chart.js, Formik

Інструменти
Git, GitHub Actions
Docker, Linux
Vite, webpack
Jest, Playwright
Vercel, GitHub Pages

Досвід роботи
9 червня 2026 --- 12 жовтня 2026 --- Mrplit
Weather Station

Система локального моніторингу погоди: сенсорні станції на ESP32
надсилають підписані показники на бекенд Next.js, користувачі
переглядають дані в реальному часі та отримують сповіщення через
Telegram-бота.

Я був основним розробником і відповідав за реалізацію функціональності
на всіх рівнях --- від бази даних до інтерфейсу користувача.

Спроєктував і розробив публічний REST API для користувацьких
скриптів: персональні API-ключі (хешовані, відображаються лише один
раз, можуть бути відкликані), дозволи (scopes), обмеження до 60
запитів на хвилину, версіонована специфікація OpenAPI з
інтерактивною сторінкою документації
Реалізував спільний доступ до пристроїв із ролями власника /
редактора / спостерігача: єдина перевірка дозволів, що
використовується в інтерфейсі, серверних діях і функції PostgreSQL,
із тестами, які виявляють розбіжності між реалізаціями
Telegram-бот: прив'язка облікових записів, інтерактивне меню,
керування сповіщеннями через вебпанель, підвищення надійності
планувальника сповіщень
Прошивка (C++, ESP32): калібрування BMP280, розрахунок тиску на
рівні моря, опитування датчиків кожні 5 хвилин
База даних: PostgreSQL із Row-Level Security, зберіганням даних та
щоденною агрегацією
Обладнання: розробив корпус для 3D-друку (вентиляційна решітка,
розділювальна кришка, інструкція зі збирання)
Написав PRD та архітектурну документацію

Репозиторій

Стек: Next.js, TypeScript, Supabase (PostgreSQL, RLS, Edge
Functions), Clerk, TanStack Query, Telegram (grammY), ESP32 / C++, Jest,
Playwright, Vercel

Некомерційні проєкти
RelaxMap

Соціальна платформа для публікації та пошуку місць для подорожей на
інтерактивній карті. Команда з чотирьох осіб; я був тімлідом та основним
frontend-розробником (понад половину frontend-комітів).

Планував роботу, розподіляв завдання та перевіряв pull request-и
Інтерактивна карта з позначками локацій (Leaflet): перегляд,
додавання та редагування місць із фотографіями
Відгуки, облікові записи користувачів і профілі; стан авторизації
зберігається після перезавантаження сторінки за допомогою
redux-persist
Форми з Formik, інтеграція з REST API через Axios; працював із
backend-розробником над API-контрактом (Spring Boot, JWT,
PostgreSQL, Docker)

Frontend-репозиторій ·
Backend-репозиторій ·
Вебсторінка

Стек: React 19, TypeScript, Redux Toolkit, React Router, Leaflet,
Formik, SCSS, Vite

RiddlesNet

Вебзастосунок, у якому ШІ генерує загадки, а гравці змагаються в таблиці
лідерів. Індивідуальний проєкт.

Генерація загадок за допомогою Google Gemini API
Реєстрація та вхід через Firebase Auth; особиста статистика та
глобальна таблиця лідерів у Firebase Realtime Database
Три мови інтерфейсу (EN / RU / UA) за допомогою React Context

Репозиторій ·
Вебсторінка

Стек: React 19, React Router, Firebase, Google Gemini API, SCSS,
Tailwind, Vite

Weather Dashboard

Панель для відстеження погоди в кількох містах одночасно. Команда з
трьох осіб; я був тімлідом і написав більшу частину коду (близько 70%
комітів).

Пошук міст, поточні погодні умови, погодинні та тижневі прогнози
(OpenWeatherMap API)
Графіки прогнозу за допомогою Chart.js, анімації з Framer Motion та
AOS
Обрані міста для авторизованих користувачів (Firebase Auth)
Автоматичне розгортання на GitHub Pages за допомогою GitHub Actions

Репозиторій ·
Вебсторінка ·
Дзеркало

Стек: React 19, Bootstrap 5, SCSS, Chart.js, Firebase, GitHub
Actions

Okimi-chan bot

Telegram-бот, який відображає статистику гравців osu! у вигляді
графічних карток. Команда з трьох осіб.

Розробив картку статистики: HTML/CSS-шаблон (Handlebars), який
перетворюється на зображення за допомогою headless Chromium
(Playwright)
Реалізував inline-режим, завдяки якому @okimi_chan_bot <username>
працює в будь-якому чаті
Покращив оформлення репозиторію: README, .env.example, метадані
пакета

Репозиторій ·
Telegram-бот

Стек: TypeScript, Node.js, Telegram Bot API, Playwright (Chromium),
Handlebars, MongoDB, Docker

Material Expressive Contact Book

Застосунок для керування контактами з JWT-авторизацією, створений для
ознайомлення з новою мовою дизайну Google Material 3 Expressive. Я
самостійно розробив увесь frontend.

Інтерфейс на основі Material 3 Expressive

Реєстрація та вхід через JWT; захищені маршрути; збереження сесії в
localStorage
Додавання, перегляд і видалення контактів; керування станом за
допомогою Redux Toolkit

Frontend-репозиторій
· Backend-репозиторій ·
Вебсторінка

Стек: React 19, Redux Toolkit, React Router, Axios, JWT, Vite

Maze Generator

Консольний генератор лабіринтів, написаний на C++. Використовує
рекурсивний алгоритм пошуку в глибину (DFS) для генерації ідеальних
лабіринтів із випадковими маршрутами та відображає їх за допомогою
Unicode-символів.

Реалізував генерацію лабіринтів за допомогою рекурсивного DFS із
випадковим вибором сусідніх клітинок
Генерує ідеальні лабіринти, у яких між будь-якими двома клітинками
існує лише один шлях і відсутні цикли
Відображає лабіринти безпосередньо в терміналі за допомогою
Unicode-символів
Використовує сітку розміром 30×30 із генерацією нового лабіринту під
час кожного запуску

Репозиторій

Стек: C++20, CMake

Chess Engine

Мінімалістичний шаховий рушій, розроблений з нуля на C++17 із
використанням лише стандартної бібліотеки STL.

Реалізував генерацію та перевірку ходів для всіх шахових фігур
Додав повний набір шахових правил: рокірування, взяття на проході,
перетворення пішака, визначення шаху, мату та пату
Підтримує рокірування Chess960 та умови нічиєї (триразове повторення
позиції, правило 50 ходів, недостатня кількість матеріалу)
Реалізував імпорт та експорт FEN для користувацьких позицій на дошці
Додав алгебраїчну нотацію ходів та ASCII-відображення шахівниці

Організував рушій як бібліотеку в одному заголовковому файлі,
придатну для повторного використання
Додав автоматизовані тести та кросплатформену збірку

Репозиторій

Стек: C++17, STL, CMake, Conan, vcpkg, CTest

Trackfetch

Кросплатформний CLI-інструмент для завантаження музики з YouTube з
точними метаданими та обкладинками альбомів, отриманими зі Spotify.

Зчитує плейлисти зі звичайних текстових файлів зі списком виконавців
і назв композицій
Отримує офіційні метадані та обкладинки альбомів через Spotify API
Шукає музику на YouTube за допомогою yt-dlp та обирає
найвідповідніший аудіозапис на основі схожості назв і виконавців
Підтримує формати MP3, Opus та M4A
Додає ID3-теги та обкладинки альбомів до завантажених файлів
Реалізував можливість продовження завантаження з місця зупинки та
відстеження успішно завантажених і невдалих композицій
Підтримує Linux, macOS та Windows, включно з автономними збірками
для x86_64 та ARM64
Налаштував автоматизовані тести, кросплатформену CI/CD-збірку та
публікацію релізів

Репозиторій

Стек: Python, Spotify API (Spotipy), yt-dlp, FFmpeg, Mutagen,
Pytest, PyInstaller, Nix

Similar candidates

All similar candidates


Compare your requirements and salary with other companies' jobs: