Опыт работы
Декабрь 2013 — по настоящее время
Спутник
программист
Москва
Обязанности и достижения

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

Через 4 месяца: team leader сервисов "Лекарства" (med.sputnik.ru) и "Мой дом" (dom.sputnik.ru).

Через год: team leader проекта считающего алгоритмы ранжирования (например Page Rank) на ссылочном графе (миллиарды вершин, триллионы ребер, кластера из десятков машин) и проекта поисковых виджетов (фильмы, персоны, рецепты, праздники).

Руководство командой программистов, участие в создании процессов деплоя и тестирования. Пропагандирование множества полезных практик: юнит-тестирования, непрерывной интеграции, переход на git, подход pull-request с pre-commit ревью кода и т.д.

Технологии: С++, hadoop, yarn, hdfs, hbase, zookeeper, redis, postgresql, map-reduce
Платформа: Linux

Март 2012 — Ноябрь 2013
ООО "Виполь"
программист
Москва
Обязанности и достижения

Проектирование и разработка сервера для программы, основной функцией которой является обмен мгновенными сообщениями, видео, аудио звонки (в том числе и на стационарные телефоны) и конференции. От множества других подобных программ эта отличается полным шифрованием на стороне клиента.

Работа в этой компании я сделал:

* Передачу видео, аудио и файлов между клиентами (протокол на основе UDP с возможностью организации виртуальных соединений, в том числе и с гарантией доставки для передачи файлов).
* Реализовал протокол SIP для "приземления" аудио звонков.
* Систему доставки мгновенных сообщений на клиентские приложения.
* Принимал активное участие в разработки файлового хранилища.

Технологии: C++, асинхронность, redis, mongodb.
Платформа: Linux.

Апрель 2005 — Март 2012
ООО "ЕМЕ"
программист
Москва
Обязанности и достижения

Разработка и проектирование ядра ERP (WMS, CRM) системы EME DB. Система является клиент-серверной распределенной платформой и включает в себя базу данных, HTTP сервер, редактор диалогов, внутренний язык программирования, система SQL-подобных запросов, генератор отчетов. Более подробная информация о системе доступна на сайте http://www.eme-wms.ru/.

2005 - 2006 Участие в различных проектах по автоматизации торговой, риэлторской и рекламной деятельности. Руководитель проекта по организации хранилища документов для крупной строительной компании. Участие в разработке ядра системы.

2006 - 2012 Руководитель отдела разработки ядра системы. Поддержка старого кода (3 млн. строк), написание нового. Выполнено большое количество задач: оптимизация многий функций, написание профайлера для ядерного и прикладного кода, система тестирования интерфейса и записи действий пользователя, портирование программы на ОС Linux. Разработка Web приложений как для внутреннего использования, так и для клиентов.