Fullstack-разработчик с опытом работы на TypeScript (Nest.js, Express, Prisma) и Go для бэкенда, включая работу с PostgreSQL, Redis, BullMQ и чистым SQL. Также разрабатывал небольшие сервисы на Python с FastAPI. На фронтенде использую React, Next.js, Electron и Effector вместе с сопутствующими технологиями.
Успешно применяю Git для организации рабочего процесса и контроля версий. Имею опыт работы с инструментами непрерывной интеграции и развертывания (CI/CD) GitHub Actions, GitLab CI.
Также иногда вношу вклад в open-source проекты, которыми пользуюсь.
Хочу развиваться в направлениях бэкенд- и фронтенд-разработки. Открыт к изучению новых языков программирования, платформ и технологий.
В 2024 закончил бакалавриат по программе «Программная инженерия» в НГТУ.
Freelance. Full Stack разработчик (backend, frontend, infra): сервис оптовых закупок на Next.js с бекендом на Firebase. Занимался проектированием и разработкой клиентской и серверной части сервиса, настраивал VPS, домены, бэкапы, автоматизацию деплоя через Ansible. Приложение работает уже пятый год и помогает в ведении бизнес-процессов.
Позволяет добавлять линейки товаров (в каждой линейке несколько цветов и размеров). Пользователи могут участвовать в закупке каждого экземпляра товара.
Когда набирается нужное количество покупателей, менеджеры (байеры) подтверждают закупку и добавляют закупку в свои списки закупок.
Можно сгенерировать QR-коды для каждого экземпляра товара. Они клеятся на упаковки с товарами для каждого покупателя. Формируется pdf с QR-кодами для печати.
Также в мобильной версии есть сканер qr-кодов, который умеет открывать страницу с товаром.
Списки закупок наполняются автоматически. В них так же указывают взятое количество денег. После завершения закупки ее подтверждает менеджер и товары добавляются в счет-фактуры соответствующих покупателей.
У каждого покупателя ведется баланс и список счет-фактур. Учитывается оплата работы сотрудников.
Занимался проектированием и разработкой клиентской и серверной части сервиса, настраивал VPS, домены, бэкапы, автоматизацию деплоя через Ansible.
Так как часть логики была на фронте, добавлял фильтры и правила в Firestore, чтобы с фронта нельзя было добавлять и изменять запрещенные поля. Большая часть бизнес-логики была в Firebase Functions.
Впоследствии возможностей Firestore перестало хватать и бек был переписан на TypeScript, Nest.js, Prisma.