Профессиональные навыки
Опыт работы
Декабрь 2014 — по настоящее время
senior javascript developer
Санкт-Петербург
Обязанности и достижения

1. Разработка и поддержка SPA (single page application) (backbone.js).
В рамках работы над этим проектом:
- переход с ecma2016 (es5) на ecma2015 (es6);
- обновление мажорных версий библиотек;
- переработка сборки на webpack;
- разработка и поддержка виджета в виде npm-модуля для смежного проекта;
- крупный рефакторинг существующей кодовой базы;
- модернизация архитектуры;
- внедрение JavaScript Code Style checker (JSCS);
- внедрение SCSS(SASS);
- выделение проекта из монолитного репозитория, формирования микросервиса (переход компании на микросервисную архитектуру).

2. Разработка, внедрение, поддержка SPA на react.js.
В рамках работы было реализовано SPA как модуль для двух других SPA (одно на backbone.js, другое на react.js). Разработка велась с нуля.

3. Занимался организацией виртуальной команды для работы над частью задач.

4. Рабочий процесс построен по agile-методологии:
- в рамках команды в качестве фреймворка используется Scrum;
- в рамках межкомандного взаимодействия занимаюсь фасилитатацией периодических совещаний (mettings) по решению проблем с frontend-частью, а также проведением квартальной ретроспективы.

5. Работа в команде разработки сервиса логгирования js-ошибок:
- клиентский модуль (слушает window.onerror и выполняет разбор ошибки);
- backend на node.js;
- отсылка логов в splunk;
- просмотр ошибок в реальном времени (frontend реализован на react.js).
Ведутся работы над публикацией работы под opensource-лицензией.

Июль 2013 — Декабрь 2014
Topface
Javascript developer
Санкт-Петербург
Обязанности и достижения

1. Работа над платежными системами:
- поддержка инфраструктуры;
- модернизация архитектуры;
- добавление новых.
2. Работа с существующей кодовой базой:
- рефакторинг;
- добавление нового функционала;
- удаление старого функционала, неиспользуемого кода.
3. Работа с экспериментами:
- построение архитектуры для временного функционала (эксперимента);
- создание функционала эксперимента;
- удаление эксперимента;
- создание новых версий экспериментов на основе существующих и их комбинаций;
- модернизация экспериментов в штатный функционал.
4. Разработка и внедрение нового функционала.

5. Процесс разработки был организован по классической схеме:
- менеджер формирует задачу;
- разработчик (я) формирует ТЗ, уточняя у менеджера нюансы;
- разработчик подробно оценивает задачу;
- согласование сроков с менеджеров, при необходимости - урезание ТЗ до приемлемого уровня;
- реализация задачи (с тестированием);
- доставка до пользователя;

6. Большая часть задач содержала в себе как frontend, так и backend. Это требовало тесного взаимодействия с backend-разработчиками.

Август 2012 — Июль 2013
ООО "Восстания 6"
Full stack web developer
Санкт-Петербург
Обязанности и достижения

Разработка c нуля и поддержка онлайн-приложения. http://logic-games.spb.ru/chess/

Май 2012 — Июль 2012
Стартап (на тот момент не было названия)
javascript developer
Санкт-Петербург
Обязанности и достижения

Разработка и доработка существующих модулей (js, php) без использования фреймворков и библиотек.

Апрель 2012 — Май 2012
Yota
сотрудник технической поддержки
Санкт-Петербург
Август 2011 — Декабрь 2011
Группа компаний МЭТР
стажер программист 1с
Санкт-Петербург
Обязанности и достижения

Работа с клиентами, доработка конфигураций, работа с выгрузками.

Февраль 2011 — Июнь 2011
Юниум (бывший ФТК)
Преподаватель
Санкт-Петербург
Обязанности и достижения

Преподавание основ C# и основ web-конструирования.

Высшее образование
Сентябрь 2008 — Июнь 2013
СПбПИ
Технической кибернетики; ФТК
Санкт-Петербург
Специализация и достижения

Кафедра Системного Анализа и Управления (САиУ).