Бэкенд-разработчик. Делаю серверную часть сайтов и сервисов, которая работает стабильно и не ломается под нагрузкой.
Больше 6 лет коммерческой разработки: от сервисов онлайн-платежей и геоинформационных систем до интернет-магазинов и сайтов для сетей компаний. Работаю на нескольких языках программирования, что позволяет подключаться к разным командам и проектам без долгой раскачки.
Коммерческие проекты. Код закрытый — это рабочие системы компаний, поэтому ниже не ссылки на код, а то, что реально было сделано.
Разрабатываю и поддерживаю серверную часть веб-сервиса: бизнес-логику, работу с данными и интеграции с внешними системами.
Первым проектом на этой позиции спроектировал и написал с нуля сервис синхронизации и отчётности для сети отелей Azimut Hotels на Symfony — в полуручном режиме, через диалог с бесплатным чатом нейросети, разобрал архитектуру инкрементальной синхронизации и довёл её до рабочего продакшена: консольные команды забирают бронирования из TravelLine пачками с докачкой по токену курсора, конвертируют часовые пояса, а готовые Excel-отчёты по расписанию собираются через PhpSpreadsheet и автоматически уходят на почту. Разрабатывал backend API на Laravel + GraphQL для Azimut Hotels и для Vertera. Сопровождал и дорабатывал сервис генерации и рендеринга SVG-планов этажей для БТИ (бэкенд на C# ASP.NET, часть системы — на Java): разбирался в чужой архитектуре без документации, исправлял ошибки, расширял функциональность. Восстановил из исходников заброшенный legacy-проект на Yii2: миграции БД, починка зависимостей, запуск и документация. Работал с высокодоступной PostgreSQL-базой через Stolon, анализировал рост данных и проблемы производительности, настраивал сетевое взаимодействие сервисов в Docker, подключал Laravel Telescope и Symfony Web Profiler для диагностики.
Разрабатывал модули на Symfony для государственного экологического сервиса: экологический надзор, недропользование, расчёт рассеивания, интеграции с ГИС и госсервисами — больше 100 выполненных задач, включая крупные функциональные изменения и критические исправления. На фронтенде делал интерактивную карту города с геоданными. Также участвовал в техническом собеседовании новых разработчиков для проекта.
Разработал с нуля сервис аренды контента: спроектировал и реализовал REST API и административную панель на Laravel 11, интегрировал внешние Media API. Фронтенд сделал отдельным PWA-приложением на Vue 3 / Nuxt, полностью разделив backend и frontend на независимые части.
Разрабатывал продуктовый сервис поиска банковских предложений на PHP / Laravel 5.4–5.6 с интерфейсом на Vue 2: REST API и интеграции между сервисами, хранимые процедуры и работа с данными в PostgreSQL, оптимизация MySQL-запросов и рефакторинг legacy-кода, очереди и асинхронная обработка через RabbitMQ, покрытие кода тестами на PHPUnit. Разработал и интегрировал в существующий монолит новый сервис, работал с микросервисным взаимодействием. Отдельно спроектировал и сам довёл до продакшна асинхронный FastAPI-микросервис для обработки платежей: SQLAlchemy, очереди через aio-pika, хранение файлов в MinIO/S3, WebSocket-уведомления и авторизация через JWT — архитектурные решения по идемпотентности и правам принимал самостоятельно.
Администрировал MySQL, настраивал резервное копирование и восстановление баз данных, администрировал MS Active Directory и занимался вопросами информационной безопасности.
Исходный код коммерческих проектов закрыт, поэтому здесь не история коммитов, а конкретные задачи, которые я решал на этих местах работы, и то, какие технологии использовались чаще всего.
В скольких из 6 моих мест работы применялась технология.
Открытый код на GitHub — проекты для себя, тестовые задания и эксперименты с новыми технологиями. Изображения подтягиваются напрямую из GitHub.
Коротко о каждой технологии из карточек выше — что это такое и ссылка на официальную документацию.
Обновил старую библиотеку иконок до современной версии Vue и опубликовал как самостоятельный пакет — им может пользоваться любой разработчик.