Обо мне

Специализация и профессиональные навыки: highload, complex projects, internet advertising systems, trading software, network servers.

Активный стек технологий:

java(JDK 1.8), postgres, cassandra 2, redis, rabbitmq, jgroups, spring 4/guice, mybatis, teamcity, git, ansible, flyway, r, influxdb, spark, grafana.

Опыт работы
Февраль 2014 — по настоящее время
Ведущий серверный программист
Москва
Обязанности и достижения

Обязанности:
- Проектирование и разработка социальной сети

Достижения:
- Дизайн и реализация ключевых компонентов социальной сети.
- Быстрое и надежное хранилище файлов (репликация через jgroups).
- Websocket сервер с поддержкой шардинга клиентов.
- Биллинг и платежные сервисы.
- Рекомендованная лента.
- Мониторинг.
- Поиск закономерностей в данных, которые помогают улучшить сервис или выявить проблемы.
- Прочие компоненты платформы: масштабируемый redis-cache, система конфигурации и т.д.
- Принимал участие в разных ролях: java-разработчик, cassandra database эксперт, performance инженер (методология нагрузочного тестирования, оптимизации), системный архитектор (участвовал в выборе технологий), devops (dev/test env., советы по конфигурации, поиск проблем).

java(JDK 1.8), postgres, cassandra 2, redis, rabbitmq, jgroups, spring 4, mybatis, teamcity, git, ansible, flyway, r, influxdb, spark, grafana.

Ноябрь 2010 — по настоящее время
n/a
Трейдер FORTS
Москва
Обязанности и достижения

Обязанности:
- Ни одного убыточного года.

Достижения:
- Ни одного убыточного года.

Ноябрь 2011 — Декабрь 2013
QIWI
Lead programmer/Team lead
Москва
Обязанности и достижения

Обязанности:
- Спроектировать, разработать и запустить серверную часть новой платформы для АСО (платежные терминалы).

Достижения:
- Спроектировал, разработал и запустил ;-)
- Патчи к chromium, значительно ускоряющее его работу при большом количестве extensions
- Краткая презентация того, что было сделано: http://goo.gl/7Q93B5

java (JDK 1.7), rhino, cassandra, jetty 9, spring, guava, guice, jooq, jax rs, testng, Mockito, JMS, maven, teamcity, jira, git.
oracle
memcached
debian

Июль 2011 — Октябрь 2011
voxcom
System architect/Programmer
Москва
Обязанности и достижения

Обязанности:
- Разработка масштабируемой и отказоустойчивой архитектуры в новом проекте
- Участие в модернизации внутренних процессов компании, связанных с циклом разработки ПО
- Участие в качестве консультанта по архитектуре приложений в других проектах компании
- Проведение собеседований с кандидатами

Достижения:
- Собрал требования и спроектировал архитектуру проекта, исходя из них.
- Выпустил первый внутренний релиз проекта(к сожалению заказчик прекратил финансирование).
- Принимал активное участие в стабилизации работы в production других проектов компании.

Июль 2010 — Февраль 2011
UBS
Senior Java Developer
Москва
Обязанности и достижения

Обязанности:
- Развитие проекта
- Расследование инцидентов в production
- Рефакторинг кода

Достижения:
- Перевел сложное приложение с legacy binary files на JPA/Oracle(применял TDD)
- Нашел несколько слабых мест в архитектуре проекта, задокументировал и предложил возможные способы решения проблем

Февраль 2009 — Май 2010
Стартап
Основатель
Москва
Обязанности и достижения

Обязанности:
- Создать технически-лучший счетчик и рейтинг в мобильном интернете

Достижения:
- Был придуман и создан самый(?) быстрый способ определения моб. устройства по user agent(при небольшом размере базы). База и метод поиска адаптивны к новым устройствам
- Разработаны новые алгоритмы определения уникального пользователя

Проект не коммерческий, но часть разработок применяется в коммерческих проектах, часть открыта под open source лицензией.

Январь 2009 — Декабрь 2009
Стартап
Lead programmer/System architect
Москва
Обязанности и достижения

Обязанности:
- Полный цикл разработки ПО.

Достижения:
- Спроектировал с ноля, реализовал и успешно запустил движок и систему управления рекламной сетью.
- Ни одного fuckup за год (15-20 релизов).

Апрель 2007 — Декабрь 2008
oemdesign
Lead programmer/Team lead
Москва
Обязанности и достижения

Обязанности:
- Разработка ключевых проектов компании
- Управление командой разработчиков в рамках работы над проектом
- Контроль качества кода
- Участие в обсуждениях новых версий проектов со стороны IT
- Составление и соблюдение планов разработки, распределение задач внутри рабочей группы
- Взаимодействие с отделом QA(написание test cases)
- Подготовка к релизам, deployment-стадия
- Наставничество

Достижения:
- Система управления рекламой(одна из лучших в мобильном интернете) https://plus1.wapstart.ru
- http://top.wapstart.ru (новый алгоритм счетчика)
- Улучшение качества релизов(существенно меньше багов)
- Более короткие и частые итерации, пользователи быстрее получают новые фитчи).

Февраль 2006 — Март 2007
oemdesign
Programmer
Москва
Обязанности и достижения

Обязанности:
- Разработка проектов компании и внутренних технологий

Достижения:
- http://wap.tv.wapstart.ru/
- http://wap.pogoda.wapstart.ru/
- http://wap.myphone.wapstart.ru/
- http://top.wapstart.ru/
- База по мобильных устройствам и операторам

Высшее образование
Январь 2002 — Январь 2006
МИФИ
Очно-заочного (вечернего) обучения; "В"
Москва
Среднее специальное образование
Январь 1996 — Январь 2000
колл., Московский колледж управления и новых технологий; МАПТ им.C.Орджоникидзе
Москва