Обо мне

* Более 20 лет опыта в области информационных технологий.

* Опыт руководства командой разработчиков.

* Опыт работы в крупной иностранной компании в интернациональной команде.

* Опыт разработки систем с высокой пропускной способностью и малым временем отклика.

* Языки программирования: Scala, Java, Python.

* Tools/frameworks: Akka, Spring, Google Guice, MyBatis, Apache Camel.

* Application servers: Tomcat, Oracle WebLogic, IBM WebSphere.

* Java EE: Servlets, JAX-RS, JAX-WS, JMS.

* Mobile platforms: Android.

* Сервера баз данных: PostgreSQL, Elasticsearch, IBM DB2, Oracle Database, MS SQL Server.

* Tools: Ant/Maven/Gradle, SVN/Mercurial/Git.

* Devops tools: Ansible.

* Операционные системы: Linux, Windows.

Опыт работы
Брокер для профессионалов
Scala Developer
Август 2016 — По настоящее время (2 года и 10 месяцев)
Распределенная система для оказания брокерских услуг по биржевой торговле. Scala, Java, C++, Akka, Netty, PostgreSQL, Git, Maven, Linux. Разработал сервис интеграции по операциям с биржевыми заявками (ордерами) по FIX протоколу. Выполнил рефакторинг модуля FIX reverse proxy по переводу реализации со Scala Actors на Akka Framework. Осуществляю поддержку несколько десятков сервисов по предоставлению биржевых котировок и обработке заявок на торговлю.
Бизнес ИТ-интегратор
Системный архитектор
Июль 2015 — Август 2016 (1 год и 2 месяца)
Отказоустойчивое распределенное хранилище для двоичных объектов. Java, Scala, C++, JAX-RS/Jersey, Akka, JMS, ActiveMQ, Ceph, Elasticsearch, Maven, Sbt, Git. Подготовил и представил заказчику техническое решение по реализации хранилища, по итогам презентации был заключен новый контракт. Разработал модуль с основными операциями над объектами, подготовил спецификацию REST API хранилища. Выполнил проектирование механизма формирования поисковых индексов. Подготовил и провел демонстрацию работы хранилища техническим специалистам заказчика. Разработал скрипты нагрузочного тестирования. Разработал сервисы для снятия снапшотов и выгрузки объектов для последующего копирования на магнитные ленты.
Разработка и внедрение ПО для автоматизации банковской деятельности
Системный архитектор
Июль 2010 — Июль 2015 (5 лет и 1 месяц)
Система автоматизации деятельности государственного заказчика. Java, IBM DB2, IBM WebSphere, IBM Integration Bus, Spring Integration, JAX-RS/Jersey, MyBatis, JDBC, JMS, Ansible, Elasticsearch, Mercurial, Maven. Работал в составе проектных команд по подсистемам информационного обмена, единого хранилища документов и нормативно-справочной информации. Принял участие в проектировании хранилища документов. Разработал REST API для подсистем информационного обмена, справочной информации и хранилища документов, реализовал модуль обработки входящих документов, выполнил формализацию требований совместно с бизнес-аналитиками. Разработал модули для сбора и хранения логов, регистрации сервисов (service discovery), скрипты для автоматического развертывания подсистемы информационного обмена. Подсистемы успешно сданы в опытную эксплуатацию. Cистема автоматизации деятельности государственного заказчика. Java, Oracle ADF Framework, Oracle WebLogic, BPMN/BPEL, Spring Framework, EJB, JPA, JDBC, JMS, Gradle. Система включает большое количество модулей/подсистем, реализующих различные процессы деятельности заказчика. Разработка новых модулей велась одновременно с внедрением в эксплуатацию готовых подсистем. B качестве сервера приложений - кластер Oracle WebLogic Suite 11g, сервер базы данных - Oracle Database 11g, бизнес процессы реализуются на BPMN/BPEL. Выполнял обязанности руководителя группы разработчиков, ответственность за подсистему по оформлению разрешений/лицензий. Разработал модуль процесса оформления документов, подготовил прототип UI и сценарии использования (use cases). Подсистема успешно внедрена в эксплуатацию.
Системный архитектор
Март 2008 — Апрель 2010 (2 года и 2 месяца)
ТВ-приставка на платформе Android, http://telechip.ru Java, Android, Ant, Gradle. Разработка набора приложений для Android, собственная оболочка для запуска приложений (home application), взаимодействие с сервисами в сети. Разработал home application, модуль для показа рекламных баннеров, виджеты для демонстрации новостей, приложение для прослушивания онлайн радиостанций. Система транспортного контроля, http://17minut.ru Java, Spring Framework, MyBatis, JDBC, JMS, Ant, Svn. Система для контроля передвижения транспортных средств, оборудованных мобильными устройствами. В рамках системы разработан собственный протокол для обмена сообщениями между мобильными устройствами и сервисами в сети. Транспортное средство с заданной периодичностью посылает сообщения с текущими GPS координатами или видимыми базовыми станциями сотовой связи, есть возможность посылать команды с сервера на мобильное устройство. Реализовал пакетное обновление информации между транспортными средствами и сервисами. Система учета продаж для ООО "Генеральный оператор лотерей" Java, JavaFX, Swing, C#, WCF. Проект включает JavaFX/Swing клиент для платформ Linux/Windows для осуществления продаж и учета выигрышей, выполняющий синхронизацию данных с центральным сервером по расписанию. Сервер реализован на C#/WCF. Разработал архитектуру системы, клиентское приложение и ключевые сценарии обмена данными на сервере, выполнил проектирование пользовательского интерфейса. Система рассылки Zero Type SMS Java, JDBC, Apache Camel, C#, WCF, T-SQL. Система предназначена для обработки запросов по отправке Zero Type SMS с уведомлением о доставке, поддержка одновременной работы через несколько SMSC, устойчивость к отказам SMSC, возможность планировать загрузку по допустимой пропускной способности SMSC. Разработал техническое задание, веб-сервис для приема запросов по отправке, структуру базы данных и сервис для обработки. Игровая социальная сеть "Nival Network", http://www.zzima.com/ Java, Apache ActiveMQ, ehCache, PostgreSQL, PHP, jQuery. Решение включает PHP Front-end с активным использованием AJAX, Java REST веб-сервис для выполнения бизнес-логики, PostgreSQL сервер в качестве хранилища, для асинхронных операций сервер Apache ActiveMQ, клиентское приложение для интеграции игр с сервисами социальной сети. Разработал общую архитектуру системы, REST веб-сервис, модуль для обработки JMS сообщений, процедуры PostgreSQL на pljava для работы с JMS, осуществлял техническое руководство проектом. Мобильная синхронизация GWT, Java, Spring Framework, Hibernate, PostgreSQL, Tomcat. Для ведения общего списка контактов компании, я предложил реализовать серверное приложение для синхронизации списка контактов c мобильными устройствами по протоколу SyncML. Приложение состоит из двух компонентов - модуля SyncML-синхронизации и веб-приложения для управления контактами через браузер. Реализовал полностью оба компонента, приложение используется сотрудниками компании. Услуга "Мобильный платеж" для оператора мобильной связи Beeline C#, WCF, T-SQL. "Мобильный платеж" - платежи с банковских карт за услуги мобильной связи, система сертифицирована стандартом PCI DSS. Цель проекта - реализовать сервис по управлению услугой и осуществлению платежей для сторонних систем, асинхронное взаимодействие с биллингом, новые сценарии регистрации банковских карт. Разработал WCF-сервис как единый интерфейс услуги, сервис для взаимодействия с биллингом.
Системный архитектор
Май 2006 — Июнь 2007 (1 год и 2 месяца)
Услуга "Мобильный платеж" для ОАО "Вымпелком". C#, T-SQL, MS Visual Studio NET 2003/2005, MS Visio, MS SQL Server 2000/2005, Windows 2003/ХP/2000. "Мобильный платеж" - услуга по осуществлению платежей с банковских карт за оказанные услуги мобильной связи, система с распределенной архитектурой с жесткими требованиями по производительности и надежности. Выполнил подбор команды и аттестацию разработчиков и тестировщиков (5 человек). Разработал архитектуру системы совместно с техническими специалистами заказчика и банками "Альфа-банк" и "Русский стандарт" и два модуля: веб-сервис по приему запросов на проведение транзакций (пиковая нагрузка - 50 запросов в секунду), веб-сервис регистрации банковских карт. Реализовал требования по мониторингу системы при эксплуатации. Система успешно введена в эксплуатацию. В настоящее время услуга предоставляется абонентам. SMS Broadcasting System для ОАО "Вымпелком". C#, T-SQL, MS Visual Studio NET 2003/2005, Sybase Power Designer, MS Visio, MS SQL Server 2000/2005, Windows 2003/ХP/2000. SMS Broadcasting System - система массовой рассылки SMS с высокими требованиями к производительности и надежности. Основная цель развития системы - улучшение производительности и реализация новых требований к продукту. Разработал план проведения работ по проекту и техническое задание. Выполнил согласование технического задания с заказчиком и прототипирование технических решений по увеличению производительности, передачи исходных данных по безопасным каналам (SFTP, HTTPS) и шифрования (RSA). Разработал модуль для передачи файлов через протокол SFTP. За полгода эксплуатации системы не было обнаружено ни одного дефекта.
Системный архитектор
Июнь 2007 — Март 2008 (10 месяцев)
Система учета торговых марок/знаков для "Роспатент" (Федеральный Институт Промышленной Собственности). C#, ASP.NET, PL/SQL, MS Visual Studio NET 2003/2005, Oracle, EMC Documentum, Windows 2003/ХP, Sun Solaris. Присоединился к проекту на стадии внедрения модуля приема заявок. В ходе тестовой эксплуатации модуля заказчик был неудовлетворен временем регистрации заявки в системе. Разработал техническое решение для удовлетворения требований по быстродействию, в результате время регистрации заявки уменьшилось в два раза. Система выставления счетов клиентам для DHL International. C#, ASP.NET, T-SQL, MS Visual Studio NET 2005, MS Visio, MS SQL Server 2005, Microsoft Reporting Services, Windows 2003/ХP. Участвовал в процессе формализации требований по сценариям массовой печати счетов, подготовил оценку трудозатрат. Разработал Windows сервисы для массовой генерации счетов и последующей отправки по e-mail, на FTP архивы или печати, ежедневная нагрузка более 10000 счетов. Разработал ActiveX control для печати счетов через браузер. Принял участие в разработке веб-интерфейса продукта с применением технологии AJAX. Система учета бланков для образовательных учреждений МВД России. C#, T-SQL, MS Visual Studio NET 2005, Windows Forms, MS SQL Server 2000, Windows 2003/ХP. Разработал Windows Forms приложение "Головной Центр" для осуществления распределения бланков между филиалами и учета выданных бланков. Приложение реализует более 15 бизнес-сценариев, обеспечивает управление доступом и аудит действий пользователей. Разработал скрипты миграции данных.
Лидер в области автоматизации организаций, оказывающих профессиональные услуги, разработчик первой российской PSA системы ProjectMate.
Старший инженер-разработчик
Октябрь 2004 — Май 2006 (1 год и 8 месяцев)
ProjectMate - PSA (Professional Services Automation) software product, http://www.projectmate.ru. C#, T-SQL, MS Visual Studio NET 2003/2005, Sybase Power Designer, MS Visio, Crystal Reports Designer, MS SQL Server 2000/2005, Windows 2003/ХP/2000, Wix Toolkit. ProjectMate - собственный продукт компании, система для управления портфелем проектов, учета времени и ресурсов, осуществления взаиморасчетов с клиентами. Продукт имеет клиент-серверную архитектуру и разработан на платформе .NET. В качестве сервера базы данных используется Microsoft SQL Server 2000/2005. Разработал техническую спецификацию модуля оповещений (архитектура, функции, пользовательский интерфейс, модель данных, взаимодействие с другими модулями продукта), осуществлял руководство процессом разработки (постановка задач разработчикам, анализ кода (code review)). Принял участие в разработке бизнес-логики финансового модуля системы (бизнес-сущности "Заявка", "Платеж", "Возврат денежных средств"). Разработал компонент импорта-экспорта системы для эффективного решения задач интеграции с существующими решениями клиентов, сервис автоматизированного ввода через посылку e-mail, автоматическая сборка установочного пакета продукта и необходимых обновлений. Разработка модуля зонального распределения заказов для транспортной компании. C#, T-SQL, MS Visual Studio NET 2003, Sybase Power Designer, Crystal Reports Designer, MS SQL Server 2000, Windows 2003/ХP/2000. Цель проекта - доработка существующей системы учета заказов для реализации новых требований. Для снижения транспортных издержек клиенту требовалось усовершенствовать логику распределения заказов: назначение исполнителя заказа должно было осуществляться на основании его местоположения в зоне, ближайшей к зоне заказа. Работал в составе команды из 3 человек. Реализовал GUI компонент для зонального мониторинга заказов и исполнителей. Разработал модель данных, интерфейс и бизнес-логику журнала бронирования и движения транспортных средств, отчеты по расходам топлива транспортных средств, сервис для отправки информации о назначенных заказов через SMS-сообщения. Разработка модуля CRM (Customer Relationship Management) для транспортной компании. C#, T-SQL, MS Visual Studio NET 2003, Sybase Power Designer, Crystal Reports Designer, MS SQL Server 2000, Windows 2003/ХP/2000. Цель проекта - доработка существующей системы учета заказов для реализации новых требований. Требования по реализации модуля: возможность кредитования на основании присвоенного кредитного рейтинга, поддержка системы скидок на основании истории заказов клиента. Работал в составе команды из 2 человек. Разработал модель данных, интерфейс и бизнес-логику кредитования. Реализовал отчеты активности клиентов.
ООО Русское слово
 
Ведущий инженер-разработчик
Апрель 2003 — Октябрь 2004 (1 год и 7 месяцев)
Photo Utility - программный пакет для работы с растровыми изображениями для иностранного заказчика. MS Visual Studio NET/6.0, LeadTools RasterImage Library, C++, MFC, Windows ХP/2000. В состав пакета входили редактор растровых изображений и приложение для ведения пользовательских фотоальбомов. Основная задача заключалась в реализации уникального интерфейса приложений. Работал в составе команды из 3 человек. Принял участие в разработке технической спецификации, осуществлял распределение задач между разработчиками. Разработал редактор растровых изображений, компонент для локализации приложений, принял участие в разработке библиотеки элементов пользовательского интерфейса. Выполнил профилирование и рефакторинг приложений для достижения эффективной производительности. Разработка системы управления подписчиками для on-line content provider. Red Hat Linux, MySQL, Perl. Цель проекта - обеспечить единую систему подписки для независимо разработанных сайтов с платным контентом. Участвовал в постановке задачи, разработке спецификации и проведении переговоров с заказчиком. Разработал модель данных, Web-интерфейс системы, реализовал модули для управления доступом к платному контенту.
LG Industrial Systems
 
Research Engineer, Software Development Team
Февраль 2001 — Январь 2003 (2 года)
Control Total Solution Platform - SCADA-система для промышленных предприятий. Microsoft Visual Studio 6.0, MFC/ATL, COM/ActiveX, MS SQL Server 2000, Windows ХP/2000/98. Работал в составе интернациональной команды. Разработал компоненты для доступа к данным, ведения лога и обработки критических ситуаций, генерации отчетов. Реализовал программный пакет для разработки операторных интерфейсов в системе, модуль для визуализации данных. Web-based Management System - система для мониторинга промышленных операций. Microsoft Visual Studio 6.0, MFC/ATL, COM/ActiveX, MS SQL Server 2000, Dundas HyperView Suite, Windows ХP/2000/98. Работал в составе интернациональной команды. Принял участие в разработке пользовательского интерфейса системы. Разработал несколько Human Machine Interface (HMI) компонентов для мониторинга производственных процессов через Web. Реализовал ActiveX control для визуализации данных. Выполнил рефакторинг библиотеки Dundas HyperView Suite для обеспечения эффективной производительности.
Высшее образование
Московский государственный технический университет имени Н.Э. Баумана
Москва
Факультет: Аэрокосмический; АК
Январь 1993—Январь 1999 (6 лет)