Обо мне

Я опытный разработчик веб-приложений и SAAS сервисов, систем автоматизации бизнес-процессов. Владею навыками проектирования архитектуры ПО, знаю и применяю паттерны проектирования. Работал в командах, применяющих итеративные методы разработки ПО (Agile, Scrum). С удовольствием приму участие в разработке сложных проектов и решении нетривиальных задач.

В свободное время «балуюсь» различными конкурсами:

Отмечен по результатам конкурса Яндекса «Месяц поиска уязвимостей» и занесен в «Зал Славы»

http://clubs.ya.ru/company/replies.xml?item_no=41990

https://yandex.com/bugbounty/hall-of-fame/all/

Периодически участвую в http://js1k.com/

http://js1k.com/2015-hypetrain/demo/2241

http://js1k.com/2014-dragons/demo/1926

Профессиональные навыки
Участие в профессиональных сообществах
Опыт работы
Trade ready shop
Москва
Team lead, Co-founder
Май 2019 — По настоящее время (1 год и 6 месяцев)

Разработка конкструктора интернет-магазинов

Node.js, Next.js, Postgres, Typescript, TypeORM, RabbitMQ, PHP - Yii 2, Webpack

Utorg.io
Киев
Full stack team lead developer
Декабрь 2018 — Май 2019 (6 месяцев)

Участвовал в поддержке клиента и бэкенда финансовой криптобиржи. Подключил ~5 платежных систем.

Разрабатывал свою платежную систему

Стэк: Java, Spring, Golang, Next.js, React, MobX, Postgres, RabbitMQ, Kafka, Consul, Clickhouse, Google Cloud

Разработка программных продуктов для туристической индустрии
Санкт-Петербург
Ведущий программист
Февраль 2018 — Декабрь 2018 (11 месяцев)

Разрабатывал новое ядро поиска, а также CRM/CMS системы по управлению контентом – как бэкенд, так и фронтенд

Стек: Go, Kafka, Redis, MongoDB, PostgreSQL, ClickHouse, Docker, Consul, Grafana, Ansible, Prometheus, React, Redux

Партнерская сеть, разработка: финансы, гемблинг, беттинг, крипта, аналитические системы, торговые платформы
Team lead
Апрель 2016 — Февраль 2018 (1 год и 11 месяцев)

Разрабатываю как тимлид с небольшой командой разработчиков (6-7 чел) различные сервисы для компании:

– TDS (Traffic distribution system) – высоконагруженная система для аффилейтской сети.

Стек: Go, Protobuf, gRPC, Redis, MongoDB

– CRM для управления роутингом траффика, офферам, etc с гибкой системой разграничения прав

Стек: Node.js, React, Webpack, Gulp

– Финансовую реал-тайм игру

Стек: Go, Redis, MongoDB

Интернет-маркетинг, разработка посадочных страниц, многостраничных сайтов, интернет-магазинов
Team lead
Сентябрь 2015 — Март 2016 (7 месяцев)
Разрабатывал b2b-сервис, который позволял интегирироваться с различными CRM-системами (Битрикс24, AmoCRM) и рекламными площадками (Яндекс.Директ, Google Adwords) и на собираемых данных снимать показатели эффективности как отдельны рекламных каналов, так и отдельных менеджеров. На сайте клиента устанавливался JS скрипт-счетчик, который позволял связать лидов/клиентов с конкретным рекламным каналом. Спроектировал и написал систему, состоящую из нескольких независмых микросервисов (API сервиса, счетчик, воркеры фоновых задач и тд) пригодных для масштабирования. Микросервисы общались через RabbitMQ. Покрыл тестами большую часть кода. Стэк: Node.js, Redis, RabbitMQ, MongoDB
Unitecontrol
Калининград
Full-stack разработчик
Февраль 2015 — Январь 2016 (1 год)
Основной моей обязанностью была разработка и поддержка UC HUB - это контроллер для автоматизации и систем мониторинга. Участвовал в проектировании и написал ядро системы, а также различные компоненты, часть из которых: – связь с реальными 1-wire и modbus устройствами (чтение и запись данных); – 2-х сторонняя синхронизация данных: хаб-облако, облако-хаб; – логирование данных с устройств и их аггрегация; – компонент для безопасного выполнения клиентских скриптов на сервере Оптимизировал код под ARM процессор – блокирующие main loop задачи переносил в дочерние потоки. Реализовал кастомный механизм для сглаживания данных на графиках. Помимо разрабатывал REST API для управления системой. Работал над офлайн режимом приложения – закешированное приложение работало в локальной сети с хабами без интернета. Покрывал тестами (70-80%) как публичное АПИ, так и хардварные компоненты (Mocha, Chai). Разработал и поддерживал CI и сборку готового архива для хаба.
ООО "Зачётка"
Москва
Team lead
Февраль 2014 — Февраль 2015 (1 год и 1 месяц)
Разработал и оптимизировал ядро системы обновленного продукта, систему сбора и анализа статистики пользовательской активности. Покрывал тестами основные модули (PHPUnit) Написал REST API для вузов для импорта студентов, расписания и оценок на NodeJS. Внедрил ситему кэширования - Redis Планировоние спринтов и распределние задач внутри команды, отбор кандидатов и проведение собеседований. Code review и воспитание junior-разработчиков. Бэкенд стэк: Nginx, Phalcon, MongoDb, RabbitMQ, WebSockets, Lua, Node.js, Neo4j, Redis Фронтэнд стэк: Webpack, Angular, Gulp
Novosti.ru
Москва
CTO
Август 2013 — Январь 2014 (6 месяцев)
Техническое сопровождение проекта Novosti.ru Координация работ с подрядчиками в области разработки и администрирования: поиск контрагентов, заключение договоров, написание ТЗ, планирование, оценка и контроль качества кода. Также занимался разработкой внутренней системы дистанционного обучения студентов «МскУниверситета». Разработал систему тестирования «Мини-ЕГЭ» для абитуриентов и старшеклассников на Московской международной выставке «Образование и карьера» - 2013 (~20 клиентских машин и один сервер, выдающий сертификат) Стэк технологий: Nginx, YII, MySQL
Atom Media
Москва
Ведущий программист
Август 2012 — Август 2013 (1 год и 1 месяц)
Работа в небольшом веб-отделе внутри рекламного агенства. Разработка и поддержка сайтов и CRM систем с помощью опен-сорс PHP фреймворков (CodeIgniter, Yii) Доработка внутренней системы анализа эффективности SEО-кампаний агенства на основе поисковой выдачи Google/Yandex. Система трекала поисковую выдачу конкретных запросов и отслеживала движение продвигаемых сайтов, выдавала отчет об эффективности и реальной стоимости продвижения. Имел в подчинении нескольких удаленных сотрудников, распределял задачи, контролировал срок и качество исполнения. Собеседовал кандидатов.
You show me
Москва
Разработчик, co-founder
Январь 2012 — Август 2012 (8 месяцев)
Стартап частных видео-свиданий — браузерный аналог Skype. Полностью разработал ядро системы и веб-интерфейс для проекта. Внедрил биллинг. В результате, успешное бета-тестирование с низкой задержкой и хорошим качеством связи Стек технологий: Связь — P2P поверх протокла RTMFP, Cumuls server, Lua Веб-интерфейс — Nginx, Yii, MySQL, Flash
Copylancer.ru
Москва
Программист
Декабрь 2011 — Май 2012 (6 месяцев)

Проектная работа.

Разрабатывал приложение для синонимизицаии текста.

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

На выходе из текста составлялась 50 наиболее уникальных копий с помощью алгоритма шинглов и отправлалось в биржу контента.

Частная практика, работа без зачисления в штат
Программист
Июнь 2008 — Декабрь 2011 (3 года и 7 месяцев)
Свободное плавание :) В основном, full-stack разработка сайтов и SAAS-решений, а также Flash/HTML5 баннеров и интерактивных элементов
Matodor
Астрахань
Программист
Январь 2008 — Июнь 2008 (6 месяцев)
Разработка в основном небольших сайтов. Написал с нуля и поддерживал CMS под «собственные нужды».
Высшее образование
Астраханский государственный технический университет
Астрахань
Факультет: Институт Экономики
Сентябрь 2004—Июль 2009 (4 года и 10 месяцев)
Специалист по рекламе Повышение квалификации International Advertising Association's diploma (IAA) in marketing communications