Обо мне

Специализация и профессиональные навыки:
Java, C++ , Matlab, R, Python, SPSS, Maple, Hadoop; Applied Statistics, Data Science.

Профессиональные цели:
Работа с передовыми информационными технологиями (сложные алгоритмы, математическая обработка цифровых изображений, сигналов и других данных (Data Mining)

Награды, сертификаты, портфолио, проекты:
Аспирантура Института Проблем Механики АН СССР. Специальность: Механика жидкости, газа и плазмы.

Американский университет: Maharishi University of Management. (Fairfield, IA, USA). Степень магистра по специальности Computer Science.

Дополнительная информация:
Последние публикации:

http://arxiv.org/abs/1508.06228 I. Mackarov. Stattistical look at reasons of involvements in wars. arXiv:1508.06228 [stat.AP]

(http://www.springerlink.com/content/60828315298637q0/)
Mackarov I. A. Numerical observation of transient phase of viscoelastic fluid counterflows // Rheol. Acta. 2012, Vol. 51, Issue 3, Pp. 279-287, DOI 10.1007/s00397-011-0601-y.

(http://pdfcast.org/pdf/paper-on-counter-flows )
И. А. Макаров. Численное моделирование встречных потоков вязкоупругой жидкости с использованием метода коррекции давления. Известия Российской Академии наук, серия МЖГ, 2011, №6, стр. 31.

I. Mackarov. Numerical observation of instabilities in counter flows of viscoelastic fluid. Report at Annual European Rheology Conference - Gothenburg, Sweden, April 7-9, 2010.

I.Mackarov. Pressure correction in simulation of incompressible fluid counter flows // Int. J. of Applied Mechanics and Engineering. 2009. V.14. №3, P. 791-798.

Профессиональные навыки
Опыт работы
Апрель 2015 — по настоящее время
Prediction of sales for a big network of stores
5 месяцев Prediction of sales for a big network of stores Data Scientist
Нью-Йорк
Обязанности и достижения

Data Scientist
Development of a reliable 8-component forecast system based on:

- Decision Tree (neuralnet, nnet algorithms)
- Model Tree (M5 algorithm)
- Random Forest
- Multi-variate linear regression
- Neural Network
- Support Vector Machine
- Bayesian inference (with Markov chain Monte Carlo, and Gibbs sampling procedures)

With respect to a particular dataset, the best predicting algorithm is being chosen by means of 10-fold cross validation and minimizing Mean Absolute Error (MAE) and Binomial Deviance (BD).

Instrumentation1 : R, OpenBUGS, JAGS, PostgreSQL.
Instrumentation2 : Python with modules: Numpy, SciPy, Matplotlib, SQLite3, scikit-learn (use of its cross-validated estimators, and accuracy metrics tools), and multiprocessing.
Июнь 2015 — август 2015
3 месяца
The Corre

Июнь 2015 — Август 2015
The Correlates of War project
Data Scientist
Алленттаун
Обязанности и достижения

Data Scientist
Self-conducted investigation of data on the Correlates of War project (http://www.correlatesofwar.org) with use of factorial ANOVA and other methods of Data Science.

The details are in the paper "Statistical look at reasons of
involvement in wars" at
http://arxiv.org/abs/1508.06228

Февраль 2015 — Июнь 2015
Freelance project.
Data Scientist
Минск
Обязанности и достижения

Обязанности:
- Twitter based analyses of the US banks rating. Statistical processing of the twitter posts mentioning this or that bank from the point of view of the linguistic centimental analysis. Checking if the data are normally distributed (to exclude influence of fa
- Working Environment: Python with SciPy, NumPy, IPython, Spyder, Natural Language Toolkit.
- Technologies: Sentiment classification, Random Forest.

A few classifications were done via the Prediction.io framework using
Scala & Spark ML with IntelliJ Idea + Scala plugin.

Апрель 2014 — Май 2015
Self-conducted project to simulate benchmark flows of viscoelastic fluid
Researcher / Data Scientist
Минск
Обязанности и достижения

Обязанности:
- Numerical and statistical investigation of elastic turbulence.
- Data Science for Fun: https://yadi.sk/i/8_2fXeLsdksuU

Достижения:
- Performing direct numerical simulation of the fluids flows. Using Data Science (factor, discriminant, cluster ananysis) to estimate structures / covariance / correlation of stochastic flow fields,
- Instrumentation: Visual C++, R, Matlab.

Декабрь 2013 — Апрель 2014
Corus Consulting
Senior Developer
Обязанности и достижения

Обязанности:
- Working out dynamic configurable reports for the web application. Working environments: Java 1.7, EMC Documentum Web Development Kit, DQL, IReport.

Май 2013 — Декабрь 2013
International Symposium on Bifurcations and Instabilities in Fluid Dynamics, Technion-Haifa-Israel
Self-conducted project on numerical simulation of a viscoelastic fluid counetrflows.
Минск
Октябрь 2012 — Май 2013
Ведущий Программист / Координатор проекта (выполнялся в ММВБ, Москва)
Обязанности и достижения

Обязанности:
- Разработка финансовых, трейдинговых приложений с использованием Java, Web Services, Business Process Execution Language.

Июль 2012 — Сентябрь 2012
VRP Inc.
Project Manager
Минск
Обязанности и достижения

Обязанности:
- Managing and architetural support of the project on a sale system development, embedded in web sites of known production companies (Mathworks etc.)

Октябрь 2011 — Март 2012
Ведущий программист
Минск
Обязанности и достижения

Обязанности:
- Разработка банковского Java web-приложения на базе IBM file.net.
- Работал с бизнес и web частями приложения - серверной и клиентской.
- Технологии: JDK 6, Struts, Spring, IBM File-net, JavaScript.

Май 2011 — Сентябрь 2011
Ведущий программист
Минск
Обязанности и достижения

Обязанности:
- Реализация приложений для бизнес прогнозов на основе Дерева решений и других алгоритмов.
- Использовалось: MS Visual C++ 2009, структуры данных библиотеки STL, SPSS, статистика, вычислительная математика.

Декабрь 2010 — Апрель 2011
Агава, Минск
Ведущий программист
Минск
Обязанности и достижения

Создание системы наполнения web-страниц, запрашиваемых пользователем, информационным/рекламными контентом исходя из его интересов и предпочтений, следующих из профиля (таргет-портрета) пользователя и статистики предыдущей активности пользователей.
Разрабатывал и имплементировал Дерево Решений, прогнозирующее вероятность клика пользователя по любому из активных баннеров.

ОСОБЕННОСТИ РЕШЕНИЯ:
 2 версии приложения:
- клиентское desktop-приложение, строящее Дерево Решений, извлекая статистику по пользователям с кластера Hadoop серверов посредством via Hive-JDBC соединений и использования Hive SQL.
 * приложение, реализованное в форме теневых Linux процессов, запускающихся на кластере и периодически обновляющих статистику и вычисляющих обновлѐнные прогнозы.
 * интенсивное использование Hive SQL с написанием длинных и логически сложных SQL запросов (для получения максимальной выгоды от оптимизационных возможностей Hadoop с механизмом 'MapReduce'),

- построение "OLAP куба" из дерева решений посредством технологии MapReduce (с пакетом HadoopStreaming статистического приложения R ).

Инструметарий:
Hadoop, Hive SQL, R, MapReduce; прикладная статистика;
Ecllipse plugins, RCP applications.,

Август 2009 — Март 2010
Artezio
Ведущий программист
Минск
Обязанности и достижения

Обязанности:
- Работа в проекте с Beau Laboratories (USA, Los Angeles - Hollywood)
- Главная задача : создание видео- ресурсов с возможностью непрерывного изменения ракурса изображения.

Достижения:
- Использовалось: Windows 7 x64, Visual Studio 2008 x64, Matlab 2009b x64.

 Оригинальное решение по распознаванию изображений оказалось гораздо более эффективным, гибким в сравнении с известным алгоритмом GridFit, использовавшимся заказчиком до этого проекта:
 Скорость обработки каждого кадра изображения (один из критичных моментов задачи) была улучшена в 10 раз в сравнении с первоначальными ожиданиями заказчика за счѐт выделения высоконагруженных частей приложения в динамические модули на C/C++,
а также за счѐт многопоточности.

Декабрь 2007 — Июнь 2009
Belhard Development (Minsk)
Ведущий программист
Минск
Обязанности и достижения

Участие в разработке веб-портала для игровой системы со «шлюзами» с системами электронных платежей (WebMoney, EasyPay) и с использованием сертифицированных криптографических модулей.

Реализовывал один из компонентов enterprise системы: криптосервер (в виде Java-приложения на базе
JBoss, предоставляющее веб-сервисы по шифровке-дешифровке информации).
Среды разработки: Eclipse, IntelliJ Idea, JBoss, CVS, MS Visual Studio 2005
Технологии: Java SDK 5. JNI, ActiveX, JavaScript, WSDL Web Services.

Сентябрь 2006 — Декабрь 2007
Ведущий программист
Минск
Обязанности и достижения

Проект в рамках IBM, Голландия (Delft, Netherlands). Дизайн и разработка бизнес-функциональности для
Java Tomcat Web-приложений, взаимодействующих с Web- интерфейсом и автоматически уведомляющих
пользователей о ключевых событиях по e-mail на его родном языке ( internalization).
Среды разработки: Eclipse (JUnit, Tomcat plugins, remote debugging).

Технологии: Java 5, Quartz, Spring, RMI, JavaBeans, Oracle 10g PL SQL (скрипты, хранимые процедуры,
триггеры) .

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

Development of a MS Word add-in on .NET - COM technologies, providing an access to the content on a web site. The add-in is activated by clicking a button on the Word toolbar, the “Windows Explorer – like” interface lets browse and choose a document from the tree of categories that are gotten using XML-WSDL Web services, the document being then available in Internet Explorer automatically called by the add-in.
Working environment: Microsoft.NET framework 1.1-2, C#, MS Visual Studio .NET 2003-2005, MS Word 2003, CVS (code repository).

Февраль 2001 — Август 2003
Старший программист
Минск
Обязанности и достижения

• Work for the Tivoli Storage Manager support and assurance project guided by IBM-San Jose (USA). Use of TSM client/server, Windows platform (Windows NT 4.0, 2000 Professional, 2000 Server, XP), TCP/IP, Microsoft Visual C++ 6.0 (MFC, inline debugger, Spy++), Linux, AIX, Java, TCP/IP, Informational resources of IBM on basis of SMVC, Retain, Lotus Notes/Domino.
Responsibilities: as a TSM support team member
- Provided technical support to the clients.
- Investigated and fixed problems with C++ - Java code.
- Tested final C++ code versions.
- Discussed general design for TSM client C++ - Java code changes with IBM TSM team developers and managers.
- Updated official IBM documentation to reflect changes in the product code and functionality.
During the work in this project fixed a lot of problems concerning TSM different functionalities, GUI, work with file system, networking etc. Provided a help to customers on use of TSM features and system performance.
• Participation in the project on digital signal processing guided by Alcatel Co., Germany. Use of Texas Instruments Code Composer Studio, MS Visual C++ 6.0.
Responsibilities: Developed program interpreting behavior of DSP hardware working on GSM protocol. Wrote supplementary documentation in English and German.
• Development of a program for work with telephonic commutator through TAPI 1.3. Use of IBM Visual Age 3.5, MS Visual C++ 6.0.
Responsibilities:
Wrote program to forward incoming calls.
• Development of a scalable application on C/C++ for Sybase with embedded SQL. Use of MS Visual C++ 6.0 (MFC), bash shell scripting (for AIX part of the project), UML
Responsibilities:
Wrote a scalable program gathering information about network computers configuration (needed for work of Tivoli IT Director).

Сентябрь 1997 — Февраль 2001
Инженер-технолог кат.
Минск
Обязанности и достижения

Computer simulation of technological processes of oilfield development, oil transport and mining (numerical selection of well equipment for rod pumping with various properties of an oil well). Use of Borland C++ 3.1 (DOS), Borland C++ 5 (Windows 98, with API), Visual C++ 4 - 6 (with API, MFC), Excel, Maple V, Derive.
Wrote a number of programs simulating concrete industrial conditions having user-friendly interface, and implementing finite-difference, iterative methods for non-linear equations solutions.

Февраль 1992 — Декабрь 1996
Институт механики металлополимерных систем
Младший научный сотрудник
Минск
Обязанности и достижения

Computer finite-element simulation of flows of polymer melts. Use of Turbo Pascal 5.5-6, Turbo C++ 1.01, Borland C++ 3.1, OO design patterns, application of stand-alone and online Assembler for specific memory management (in particular, on XMS protocol), experience of creation of simple TSR-programs. Data management with FoxPro, Clipper.
Wrote a large-scale program implementing finite-element- and other computational methods for description of different aspects of the scientific problem, involving object-oriented design to meet the complex problem key abstractions.

Высшее образование
Январь 1982 — Январь 1988
МФТИ
Молекулярной и биологической физики; ФМБФ
Москва
Специализация и достижения

Аспирантура Института Проблем Механики АН СССР. Специальность: Механика жидкости, газа и плазмы.
1988 - 1991

Maharishi University of Management. (Fairfield, IA, USA). Степень магистра по специальности Computer Science
2003 - 2005