Full-Stack розробник | Rust, TypeScript, JavaScript | Інтеграції ШІ
Ознайомтеся з їхніми посиланнями та рештою цього профілю, щоб дізнатися, хто вони. Zinn Hub зберігає профіль кожного Zinner відкритим і прозорим — щоб ви могли будувати довіру та наймати з упевненістю.
Alexandr Sopilnik довів свої навички Zinn Hub і надав докази своєї роботи. Кожен перевірений Zinner проходить практичну перевірку якості — тож ви можете наймати з упевненістю.
🛡️ Перевірено з September 2026
Full-stack developer with 10+ years in IT. I build and fix web, desktop and mobile apps, APIs and Chrome extensions in TypeScript, JavaScript and Rust. That includes Lovable and Bolt apps that aren't ready for real users yet. I also add AI features to existing products: LLM integrations, document search and chatbots.
Stack:
- Languages: TypeScript, JavaScript, Rust, SQL, HTML, CSS/SCSS
- Front end: React, Next.js, responsive interfaces that I design myself and build without templates
- Back end: Node.js (Express, NestJS), Deno, Rust (axum), REST and gRPC APIs, Kafka
- Databases: PostgreSQL with row-level security, MySQL, MariaDB, MongoDB, Redis, Supabase
- AI: LLM integrations that check the model's output before saving it, vector search on pgvector, RAG chatbots that answer from your files
- Platforms: WordPress and WooCommerce, multilingual sites with WPML, Chrome extensions (Manifest V3), desktop apps with Tauri, mobile apps in React Native
- DevOps: Docker, Kubernetes, Helm, werf, CI/CD on GitHub Actions and GitLab CI
- Integrations and automation: payment providers, third-party APIs, scheduled jobs with an alert if one stops running
What I take on:
- Apps built with Lovable, Bolt, Cursor or v0 that work for the founder but aren't ready for real users: broken sign-in, failing payments, missing access rules, code nobody wants to touch
- New web apps from the database to the interface, plus landing pages and multilingual sites
- AI features in an existing product: LLM summaries and scoring, search over your documents, chatbots that cite their source
- Bug fixes and performance work on slow pages, API endpoints and database queries
- Backends, APIs and command-line tools in Node.js or Rust
- Desktop, mobile and browser-extension projects
Experience:
- Supabase in production: scheduled TypeScript functions, LLM steps whose output is checked before it is saved, pgvector search, an alert whenever a scheduled job stops running, and CI on every push to main
- Access control inside PostgreSQL: row-level security policies and a separate role for each subscription tier, so users see only what their plan allows
- A legacy PHP backend rewritten in Node.js/TypeScript without breaking its API; median response time on the main endpoints fell roughly 3×
- A jQuery front end moved to React page by page while the product stayed live
- Rust backends: axum microservices on PostgreSQL and Redis that talk to each other through Kafka and gRPC, with a REST API for the front end
- Open source: reqwest-rotate, my Rust crate for proxy rotation, per-host rate limits and retries in the reqwest HTTP client, published on the official Rust registry
- Live demos and client work are in my portfolio, and my public code is on the GitHub account linked to this profile.
How I work: async and in writing. I write the scope down before I start. Well-defined work gets a fixed price; open-ended work is billed hourly until the scope is clear. You get a short written update at the end of each working day, and no calls are needed. I work 10:00–20:00 Almaty time (UTC+5), which covers most of the European working day and the start of the US East Coast day.
Для початку надішліть мені те, що у вас є (репозиторій, живий додаток або короткий опис) і що вам потрібно. Я відповім письмовим планом та ціною. Якщо ви хочете спочатку побачити, як я працюю, ми можемо почати з одного невеликого завдання за фіксованою ціною, наприклад, виправлення однієї помилки.
Технології та досвід, на яких спеціалізується цей фрілансер.
Області послуг, доступні для цього фрілансера.
Бек-офіс для мого демонстраційного магазину Formline, відкритий для спроб без реєстрації: кожен відвідувач отримує приватну пісочницю з демонстраційними даними. Персонал обробляє замовлення, веде каталог і відстежує запаси, а оплачені тестові замовлення Stripe з магазину надходять через підписаний вебхук. Чотири ролі персоналу, від власника до переглядача лише для читання, мають різні права; вхід підтримує програму-аутентифікатор і ключі доступу. Створено за допомогою Next.js, React і TypeScript на PostgreSQL з Drizzle; безпека на рівні рядків розділяє кожен робочий простір. Він працює в Docker, з тестами Vitest і Playwright у CI.
Переглянути деталі →
Клієнтський проєкт: я розширив бекенд Supabase для столу, який торгує на ринках прогнозування виборів. Мої заплановані функції TypeScript роблять знімки книг замовлень Kalshi, знаходять нові виборчі ринки, створюють профілі кандидатів і піднімають сповіщення; LLM (Qwen) пише щогодинні зведення перегонів для трейдерів і оцінює коментарі YouTube. Я також додав стрічку новин з пошуком, підготовку RAG на pgvector і CI при кожному push до main. Кожне додане мною завдання повідомляє про пульс, а щогодинний сторожовий таймер сповіщає, коли завдання замовкає або перестають надходити ціни. Власник отримав посібник з налаштування та відеоінструкцію.
Переглянути деталі →
A free, open-source Chrome extension (Manifest V3) with four small fixes to the Xero pages bookkeepers use every day. The Approve button on an invoice does the action you choose, approved invoices print without downloading a PDF first, long lists get page navigation at the top, and a button sorts the current Find and recode page by description. It runs only on go.xero.com, with one permission and no analytics or remote code. Built in TypeScript; CI runs lint, type checks, Vitest unit tests and Playwright end-to-end tests of the built extension. Not affiliated with or endorsed by Xero Limited.
Переглянути деталі →
Вітрина, яку можна переглянути: 16 плакатів у 4 колекціях, фільтри та пошук, що залишаються в URL, кошик, світлі та темні теми, а також оформлення замовлення, що завершується демонстраційним замовленням або реальною сесією Stripe Checkout у тестовому режимі. Я створив її як статичний експорт Next.js на TypeScript з Tailwind CSS. Зображення плакатів генеруються з SVG-шаблонів та рендеряться в PNG під час збірки. Карткові платежі проходять через Cloudflare Worker, який перераховує кошик на сервері та перевіряє підпис вебхука Stripe. Тести Vitest та Playwright запускаються в GitHub Actions при кожному push; push до main розгортає сайт.
Переглянути деталі →
Невелика обгортка reqwest для скреперів та API-клієнтів, яким потрібна ротація проксі, обмеження швидкості для кожного хоста та повторні спроби з експоненційною затримкою, без використання фреймворку проміжного програмного забезпечення. Опубліковано на crates.io з документацією, CI та близько двома сотнями тестів.
Переглянути деталі →
Односторінковий особистий сайт англійською та російською мовами, з розділом послуг та посиланнями на мої демонстраційні проекти. Я розробив та створив його за допомогою Next.js, React та TypeScript як статичний експорт, стилізований за допомогою звичайних CSS Modules без фреймворку інтерфейсу користувача. Він має світлі та темні теми, а зображення попереднього перегляду для соціальних мереж для кожної мови генерується під час збірки. GitHub Actions створює та розгортає його на Bunny CDN, який додає заголовки безпеки та перенаправляє www та звичайний HTTP на основну HTTPS-адресу.
Переглянути деталі →
Я створив бекенд: сервіси Rust на axum, Kafka для подій між сервісами, PostgreSQL та Redis, gRPC всередині, REST для фронтенду React. Docker, CI/CD. Клієнт під NDA.
Переглянути деталі →
Переписав бекенд веб-платформи клієнта зі застарілого PHP на Node.js/TypeScript та зберіг сумісність публічного API, тому фронтенд був випущений без змін. Середній час відповіді на основних кінцевих точках зменшився приблизно в 3 рази. Розгортання перенесено на Docker з CI/CD. Клієнт під NDA.
Переглянути деталі →
Переніс фронтенд на jQuery на React сторінка за сторінкою, поки продукт залишався в роботі. jQuery зник, інтерфейс користувача базується на компонентах, а нові функції створюються на стороні React. Клієнт під NDA.
Переглянути деталі →
Створив фронтенд, бекенд та базу даних для клієнта: React, TypeScript на Node.js, PostgreSQL, випущений як єдиний розгортається сервіс з CI/CD. Клієнт під NDA.
Переглянути деталі →
Утиліти командного рядка, скрепери та парсери на Rust, які збирають дані вузької спеціалізації для клієнтів (async, reqwest, scraper, serde). Ротація проксі та обробка обмежень швидкості, коли сайт цього вимагає; цілі варіюються від статичного HTML до сторінок, відрендерених JS. Джерела та набори даних під NDA.
Переглянути деталі →
Симулятор управління з попередньо змодельованими боями та журналом подій, системою визначення місця влучання d20, утилітарним ШІ та економічним рівнем. Побудований на Bevy ECS, з автоматизованим набором тестів.
Переглянути деталі →Готові послуги, доступні для негайної покупки — переглядайте, купуйте та починайте одразу.
Невеликі дегустаційні зразки за фіксованою ціною від $5 — швидкі завдання, які можна купити в один клік, або спосіб з низьким ризиком спробувати Zinner перед більшим замовленням.
Micro Zinn
Створіть безкоштовний обліковий запис або увійдіть, щоб безпосередньо написати цьому фрілансеру.
Увійти / ЗареєструватисяУвійдіть, щоб отримати доступ до своїх панелей керування
Увійти Створити обліковий записКуди б ви хотіли піти?
Мій обліковий запис Панель покупця, замовлення, профіль Панель Zinner Керуйте своїми послугами та заробітками Панель амбасадора Відстежуйте рефералів та комісію ВийтиВаш кошик містить Zinns від іншого Zinner. Ви можете замовляти лише в одного Zinner одночасно.
Бажаєте очистити кошик і додати цей Zinn, чи спочатку оформити поточне замовлення?
Отримайте додаток Zinn Hub
Сповіщення · Швидший доступ · Повний екран
Натисніть Поділитися у вашому браузері
➜ Потім натисніть "Додати на головний екран"