Обо мне

Добрый день, я Node.js разработчик. Имею богатый опыт разработки микросервисов, консольных тулз, модулей. Например, реализовал и внедрил горизонтально масштабируемую ферму phantomjs с транспортом на WebSocket.

Skills

  • Dev skills: nodejs, phantomjs, mysql, chrome-extension, mongodb
  • Env skills: linux, bash, git, pm2
  • Node skills: typescript, es6, es5, async\await, promise/A+, mocha, eslint, babel, bluebird, socket.io, expressjs, node-mysql and more
  • Soft skills: менеджмент, работа в команде, опыт code review, вел курсы JS

Portfolio

Background

В течении 2х лет написал и отладил несколько десятков приложение:

  • Отлично знаю цену архитектурных и логических ошибок, благодаря чему разработку начинаю с листа и ручки.
  • Имею большой опыт разработки высоконагруженных и масштабируемых систем, как обертывающие числодробилки, так и реализующих уникальный функционал.
  • Обладаю опытом самостоятельного ведения проектов с нуля и сопровождения наследства от "исчезнувших" разработчиков.
  • В первую очередь для отладки применяю голову, во вторую node-inspector, а для профилирования perf
  • Мотивированный желанием писать чище - пришёл к ts: es5 -> es6 -> typescript
  • Пишу тесты, документацию, предпочитаю git-flow, sublime или vscode для typescript, имею безразмерный .bash_aliases и .gitconfig
Опыт работы
Сентябрь 2015 — по настоящее время
Avodn
Node.js Lead Developer
Мехико
Обязанности и достижения

Перейдя в компанию Avodn я продолжил работу над распределенными приложениями, непосредственно ведя процесс разработки от постановки задачи, до релиза. В частности разработал и внедрил Phantomjs ферму, для упрощения администрирования и разработки продуктов которые ранее имели phantomjs среди зависимостей, это позволило отказаться от одинаковых костылей в разных приложениях и выделить ресурсоемкую и нестабильную сущность в изолированную среду, а мне полюбить микросервисы, ES6 и флаг node --harmony-proxies

Декабрь 2014 — Август 2015
Gtflix
Node.js Developer
Прага
Обязанности и достижения

Коротко: Занимался разработкой высоконагруженных проектов под node.js и сопровождением существующих проектов, написанных на coffee и livescript

За время работы научился:
- разбираться в чужом коде
- понятно писать асинхронный код, используя промисы
- проектировать и реализовывать архитектуру микросервисов

Длинно: Прошел путь от полного контроля и постоянного ревью, до самостоятельного ведения проекта в рамках четко сформулированных требований. Работал в составе команды разработки комплекса систем для поиска пиратского видео в сети. На начальной позиции разработал не сложную, но оптимизированную и надежную платформу для постраничного обхода сайтов. Платформа базировалась на простом парсинге HTML страниц, в среднем параллельно сканировалась сотня сайтов. Последним выполненным проектом стала браузерная ферма для извлечения ссылок на скачивание с видео тьюбов. Извлечение базировалось на идеи, что вне зависимости от сложности клиент-серверного протокола, достаточно: слушать трафик, из ответов сервера выловить видеофайл, а в качестве ссылки на скачивания отдать сохраненный запрос к серверу. Проект реализован в виде расширения для chrome и нескольких микросервисов. Ферма из 20 машин стабильно работает с несколькими десятками запросов в секунду.

Октябрь 2013 — Ноябрь 2014
Комфортел
Инженер техподдержки
Санкт-Петербург
Обязанности и достижения

Работал инженером технической поддержки юридических лиц.
В компании которая продает SIP, VPN, L2 каналы, и интернет.

В мои обязанности входила обработка обращения клиентов, и решение их проблем в силу своих сил, или передача более опытным инженерам.

Приобретенные знания и навыки: понимание работы стека OSI, маршрутизации и коммутации, работа с консолью свичей и маршрутизаторов.

Высшее образование
Сентябрь 2011 — Сентябрь 2015
СПбГУ ИТМО
Информационных технологий и программирования
Санкт-Петербург